122 votes

Erreur lors du déploiement d'un artefact dans Nexus

J'obtiens une erreur lors du déploiement d'un artefact dans mon propre référentiel sur un serveur Nexus : "Failed to deploy artifacts : Could not transfer artifact" "Failed to transfer file http:///my\_artifact. Return code is : 400"

J'ai fait tourner Nexus avec un dépôt personnalisé my_repo avec la configuration locale suivante de maven :

paramètres.xml

<server>
    <id>my_repo</id>
    <username>user</username>
    <password>pass</password>
 </server>
 ...
 <mirror>
    <id>my_repo</id>
    <name>Repo Mirror</name>
    <url><my_url_to_my_repo></url>
    <mirrorOf>*</mirrorOf>
  </mirror>
  • l'utilisateur a les droits de créer/lire/écrire dans mon_repo -

pom.xml

<distributionManagement>
        <repository>
            <id>my_repo</id>
            <name>my_repo</name>
            <url><my_url_to_my_repo></url>
            <layout>default</layout>
        </repository>
        <snapshotRepository>
            <id>snapshots</id>
            <name>Snapshots</name>
            <url><my_url_to_my_snapshot_repo></url>
        </snapshotRepository>
    </distributionManagement>

et ensuite j'exécute

mvn deploy

et obtenir l'erreur. Une idée ?

187voto

Manfred Moser Points 13454

Deux ou trois choses auxquelles je peux penser :

  • les informations d'identification de l'utilisateur sont erronées
  • L'url du serveur est erronée
  • l'utilisateur n'a pas accès au référentiel de déploiement
  • l'utilisateur n'a pas accès à la cible spécifique du référentiel
  • l'artefact est déjà déployé avec cette version s'il s'agit d'une release (pas la version -SNAPSHOT)
  • le dépôt n'est pas approprié pour le déploiement de l'artefact respectif (par exemple, un dépôt de version pour la version snapshot, un dépôt proxy ou un groupe au lieu d'un dépôt hébergé).

Vérifiez-les et si vous rencontrez toujours des problèmes, donnez plus de détails ici.

37voto

bhagyas Points 2024

Juste pour créer une réponse séparée. La réponse se trouve en fait dans un commentaire de la réponse acceptée.

Essayez de changer la version de votre artefact pour qu'elle se termine par -SNAPSHOT .

30voto

roj Points 370

400 Bad Request sera renvoyé si vous essayez de :

  1. Déployer un instantané artefact (ou version) se terminant par -SNAPSHOT à un libérer dépôt
  2. Déployer un libérer artefact (version no se terminant par -SNAPSHOT ) à un instantané dépôt
  3. Déployer le même version d'un libérer artefact plus d'une fois à un libérer dépôt

16voto

ankitkpd Points 24

La cause du problème pour moi était -source.jars a été téléchargé deux fois (avec maven-source-plugin) comme mentionné comme l'une des causes dans la réponse acceptée. Redirection vers la réponse que j'ai référencée : Le plugin Maven release échoue : les artefacts sources sont déployés deux fois.

9voto

eidolon1138 Points 331

J'ai eu exactement le même problème aujourd'hui et le problème était que la version que j'essayais de publier:perform était déjà dans le dépôt Nexus.

Dans mon cas, cela était probablement dû à une déconnexion du réseau lors d'une invocation antérieure de release:perform. Bien que j'aie perdu ma connexion, il semble que la libération ait réussi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X