Lors du déploiement de la version Release de jar sur Nexus avec maven-release-plugin Le travail a échoué avec l'erreur suivante.
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [INFO] BUILD FAILURE
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [INFO] Total time: 10.235 s
[INFO] [INFO] Finished at: 2017-11-01T18:38:53+09:00
[INFO] [INFO] Final Memory: 32M/578M
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.8:deploy
 (default-deploy) on project test-lib: Failed to deploy artifacts: Could not transfer artifact
 com.sample:test-lib:jar:sources:1.0.0 from/to nexus-releases ([NexusURL]/releases): 
Failed to transfer file: [NexusURL]/releases/com/sample/test-lib/1.0.0/test-lib-1.0.0-sources.jar.
 Return code is: 400, ReasonPhrase: Bad Request. -> [Help 1]
Il semble que le déploiement de sources.jar ait échoué, mais lorsque je vérifie Nexus, il a déjà été téléchargé. .. .. En regardant le journal, il semble que ** source.jar a été déployé deux fois **. Lorsque j'ai arrêté de créer source.jar en tant qu'essai, le même phénomène s'est produit dans ** javadoc.jar **.
[INFO] [INFO] --- maven-deploy-plugin:2.8:deploy (default-deploy) @ test-lib ---
/* jar,Déploiement de Pom omis*/
[INFO] Uploading: [NexusURL]/releases/com/sample/test-lib/1.0.0/test-lib-1.0.0-sources.jar
[INFO] Uploaded: [NexusURL]/releases/com/sample/test-lib/1.0.0/test-lib-1.0.0-sources.jar 
[INFO] Uploading: [NexusURL]/releases/com/sample/test-lib/1.0.0/test-lib-1.0.0-javadoc.jar
[INFO] Uploaded: [NexusURL]/releases/com/sample/test-lib/1.0.0/test-lib-1.0.0-javadoc.jar
/*Source à nouveau.Déploiement du pot*/ 
[INFO] Uploading: [NexusURL]/releases/com/sample/test-lib/1.0.0/test-lib-1.0.0-sources.jar
///Une erreur s'est produite ici
Comme un insecte maven. En novembre 2017, il n'était pas encore fermé. https://issues.apache.org/jira/browse/MNG-5868 https://issues.apache.org/jira/browse/MNG-5939
Si vous exécutez  mvn -Prelease-profile help: effective-pom et voyez le pom qui fonctionne réellement, l'exécution est double définie comme indiqué ci-dessous. (Dans mon pom, seule la définition supérieure a été décrite)
   <plugin>
      <artifactId>maven-source-plugin</artifactId>
      <version>3.0.1</version>
      <executions>
        <execution>
          <phase>install</phase>
          <goals>
            <goal>jar</goal>
          </goals>
        </execution>
        <execution>
          <id>attach-sources</id>
          <goals>
            <goal>jar</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
Comme ci-dessus, exécutez  mvn -Prelease-profile help: effective-pom pour trouver l'exécution que vous n'avez pas spécifiée.
Ajoutez ensuite l'identifiant qui y est répertorié à pom.
(Dans mon cas, l'id de source-plugin était attach-sources et l'id de javadoc-plugin était attach-javadocs)
 pom.xml
<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-source-plugin</artifactId>
	<version>3.0.1</version>
	<executions>
		<execution>
			<id>attach-sources</id>
			<phase>install</phase>
			<goals>
				<goal>jar</goal>
			</goals>
		</execution>
	</executions>
</plugin>
<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-javadoc-plugin</artifactId>
	<version>2.10.4</version>
	<executions>
		<execution>
			<id>attach-javadocs</id>
			<phase>install</phase>
			<goals>
				<goal>jar</goal>
			</goals>
		</execution>
	</executions>
</plugin>
La version Release a été publiée avec succès en utilisant la méthode de Countermeasure 1.
Recommended Posts