Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

maven deploy + nexus failed on bad request

I am experiencing some problems with my build process.

the build is finishing fine and Jenkins starts to upload files to nexus. everything works well, but then it fails for some reason, the weirdest part is that the file that is mentioned to not be uploaded is actually uploaded and i can find it in nexus.

here is the output:

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO] 
[INFO] pn-parent
[INFO] pn-domain
[INFO] pn-infra
[INFO] pn-config
[INFO] datalink-repository
[INFO] pn-service
[INFO] pn-backend
[INFO] 
[INFO] Using the builder org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder with a thread count of 1
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building pn-parent 0.0.707
[INFO] ------------------------------------------------------------------------
[WARNING] The artifact junit:junit-dep:pom:4.11 has been relocated to junit:junit:pom:4.11
[INFO] 
[INFO] --- maven-jar-plugin:2.5:jar (default-cli) @ pn-parent ---
[WARNING] JAR will be empty - no content was marked for inclusion!
[INFO] Building jar: /var/lib/jenkins/jobs/webapps-server-side-release/workspace/pn-parent/target/pn-parent-0.0.707.jar
[INFO] 
[INFO] --- maven-deploy-plugin:2.7:deploy (default-cli) @ pn-parent ---
Uploading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn-parent/0.0.707/pn-parent-0.0.707.pom          
     Uploaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn-parent/0.0.707/pn-parent-0.0.707.pom (15 KB at 111.6 KB/sec)
Downloading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn-parent/maven-metadata.xml
     Downloaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn-parent/maven-metadata.xml (21 KB at 1036.9 KB/sec)
Uploading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn-parent/maven-metadata.xml
     Uploaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn-parent/maven-metadata.xml (21 KB at 864.7 KB/sec)
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building pn-domain 0.0.707
[INFO] ------------------------------------------------------------------------
[WARNING] The artifact junit:junit-dep:pom:4.11 has been relocated to junit:junit:pom:4.11
[INFO] 
[INFO] --- maven-jar-plugin:2.4:jar (default-cli) @ pn-domain ---
[INFO] 
[INFO] --- maven-deploy-plugin:2.7:deploy (default-cli) @ pn-domain ---
      Uploading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn-domain/0.0.707/pn-domain-0.0.707.jar    
      Uploaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/datalink-repository/0.0.707/datalink-repository-0.0.707.jar (624 KB at 7606.1 KB/sec)
Uploading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/datalink-repository/0.0.707/datalink-repository-0.0.707.pom
2/4 KB       
4/4 KB   
      Uploaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/datalink-repository/0.0.707/datalink-repository-0.0.707.pom (4 KB at 93.0 KB/sec)
Downloading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/datalink-repository/maven-metadata.xml
       Downloaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/datalink-repository/maven-metadata.xml (21 KB at 1382.8 KB/sec)
Uploading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/datalink-repository/maven-metadata.xml
       Uploaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/datalink-repository/maven-metadata.xml (21 KB at 1037.8 KB/sec)
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building pn-service 0.0.707
[INFO] ------------------------------------------------------------------------
[WARNING] The artifact junit:junit-dep:pom:4.11 has been relocated to junit:junit:pom:4.11
[INFO] 
[INFO] --- maven-jar-plugin:2.4:jar (default-cli) @ pn-service ---
[INFO] 
[INFO] --- maven-deploy-plugin:2.7:deploy (default-cli) @ pn-service ---
Uploading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn-service/0.0.707/pn-service-0.0.707.jar     
       Uploaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn/pn-backend/0.0.707/pn-backend-0.0.707.war (1247 KB at 19480.3 KB/sec)
Uploading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn/pn-backend/0.0.707/pn-backend-0.0.707.pom      
       Uploaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn/pn-backend/0.0.707/pn-backend-0.0.707.pom (11 KB at 376.2 KB/sec)
Downloading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn/pn-backend/maven-metadata.xml  
        Downloaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn/pn-backend/maven-metadata.xml (21 KB at 1213.1 KB/sec)
Uploading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn/pn-backend/maven-metadata.xml  
       Uploaded: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn/pn-backend/maven-metadata.xml (21 KB at 1031.7 KB/sec)
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] pn-parent ................................... SUCCESS [  1.081 s]
[INFO] pn-domain ................................... SUCCESS [  0.696 s]
[INFO] pn-infra .................................... SUCCESS [  0.295 s]
[INFO] pn-config ................................... SUCCESS [  0.275 s]
[INFO] datalink-repository ............................... SUCCESS [  0.390 s]
[INFO] pn-service .................................. SUCCESS [  0.475 s]
[INFO] pn-backend .................................. SUCCESS [  1.043 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6.234 s
[INFO] Finished at: 2014-07-17T14:31:30+00:00
[INFO] Final Memory: 19M/206M
[INFO] ------------------------------------------------------------------------
[WARNING] The requested profile "release" could not be activated because it does not exist.
using global settings config with name mycompany-global-dev-maven-settings
[workspace] $ /var/lib/jenkins/tools/hudson.tasks.Maven_MavenInstallation/Maven-3.1.1/bin/mvn -gs /tmp/global-settings8833627416958413984.xml deploy:deploy-file -Durl=http://maven.mycompany.com:8081/nexus/content/repositories/releases/ -DrepositoryId=mycompany.repository -DpomFile=pn-parent/Backend/pom.xml -Dfile=pn-parent/Backend/target/pn-backend.war
[WARNING] 
[WARNING] Some problems were encountered while building the effective settings
[WARNING] 'usePluginRegistry' is deprecated and has no effect. @ /var/lib/jenkins/.m2/settings.xml
[WARNING] 
[INFO] Scanning for projects...
[INFO] 
[INFO] Using the builder org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder with a thread count of 1
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-deploy-plugin:2.7:deploy-file (default-cli) @ standalone-pom ---
Uploading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn/pn-backend/0.0.707/pn-backend-0.0.707.war
...
Uploading: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn/pn-backend/0.0.707/pn-backend-0.0.707.pom
2/11 KB          
4/11 KB   
6/11 KB   
8/11 KB   
10/11 KB   
11/11 KB   

       [INFO] ------------------------------------------------------------------------
       [INFO] BUILD FAILURE
       [INFO] ------------------------------------------------------------------------
       [INFO] Total time: 1.928 s
       [INFO] Finished at: 2014-07-17T14:31:33+00:00
       [INFO] Final Memory: 6M/142M
       [INFO] ------------------------------------------------------------------------
       [ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy-file (default-cli) on project standalone-pom: Failed to deploy artifacts: Could not transfer artifact com.mycompany.pn:pn-backend:war:0.0.707 from/to mycompany.repository (http://maven.mycompany.com:8081/nexus/content/repositories/releases/): Failed to transfer file: http://maven.mycompany.com:8081/nexus/content/repositories/releases/com/mycompany/pn/pn-backend/0.0.707/pn-backend-0.0.707.war. Return code is: 400, ReasonPhrase: Bad Request. -> [Help 1]
         [ERROR] 
         [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
         [ERROR] Re-run Maven using the -X switch to enable full debug logging.
          [ERROR] 
          [ERROR] For more information about the errors and possible solutions, please read the following articles:
         [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
         Build step 'Conditional steps (multiple)' marked build as failure
         [locks-and-latches] Releasing all the locks
         [locks-and-latches] All the locks released
         [Current build status] check if current [FAILURE] is worse or equals then [SUCCESS] and better or equals then [SUCCESS]
         Run condition [Current build status] preventing perform for step [Record JaCoCo coverage report]
        Description set: 
        Start to submit Nexus scheduled tasks.
        Submitting... [id: 36, name: release-build, type: Rebuild Maven Metadata Files]
        End to submit Nexus scheduled tasks successfully.
         Notifying upstream projects of job completion
        Finished: FAILURE
like image 276
Gleeb Avatar asked Jul 17 '14 14:07

Gleeb


2 Answers

A colleague of mine just ran into the same problem with maven attempting to upload artifacts twice. We found some help in the forums, links included below. Bae's answer did the trick for us:

Try running mvn -Prelease-profile help:effective-pom. You will find that you have two execution sections for maven-source-plugin

[...]

To fix this problem, find everywhere you have used maven-sources-plugin and make sure that you use the "id" attach-sources so that it is the same as the release profile. Then these sections will be merged. Best practice says that to get consistency you need to configure this in the root pom of your project in build > pluginManagement and NOT in your child poms. In the child pom you just specify in build > plugins that you want to use maven-source-plugin but you provide no executions.

Nexus accepts upload but says it failed and Maven release plugin fails : source artifacts getting deployed twice

like image 99
reowil Avatar answered Sep 24 '22 08:09

reowil


snapshot and release confliction also results in 400 bad request. The project you are trying to update may be a snapshot like this in pom:

<version>0.0.1-SNAPSHOT</version>

while the repository in settings.xml rejects snapshot. solution:

<version>0.0.1</version>

This also happens the other way round: trying to deploy a release (version has no snapshot) version to a snapshot repository.

like image 30
Tiina Avatar answered Sep 22 '22 08:09

Tiina