Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Deploying an artifact, its sources and javadoc using maven's deploy:deploy-file plugin

Tags:

maven

nexus

I'm stumped trying to deploy an artifact, its sources and its javadoc to our maven repository (Nexus). The sources and javadoc parameters seems to be ignored, and only the main jar specified in -Dfile is actually uploaded.

Does anyone know what's wrong? Here's my command (I'm trying to put Whack into our local repository)

mvn deploy:deploy-file -Dfile=whack-1.0.0.jar \ 
                       -Dsources=whack-1.0.0-sources.jar \
                       -Djavadoc=whack-1.0.0-javadoc.jar \
                       -DgroupId=org.igniterealtime \                     
                       -DartifactId=whack \
                       -Dversion=1.0.0 \
                       -Dpackaging=jar \
                       -Durl=https://myhost.com/nexus/content/repositories/thirdparty/  
like image 665
Miquel Avatar asked Sep 20 '11 14:09

Miquel


2 Answers

First check if you are using plugin version 2.7. According documentation the option sources and javadoc are available from this version on.

If you using the correct version and it still doesn't work you can deploy the artifacts using old way - in multiple command.

To deploy source jar use:

mvn deploy:deploy-file -Dfile=whack-1.0.0-sources.jar \
                       -Dclassifier=sources
                       -DgroupId=org.igniterealtime \                     
                       -DartifactId=whack \
                       -Dversion=1.0.0 \
                       -Dpackaging=jar \
                       -Durl=https://myhost.com/nexus/content/repositories/thirdparty/

and javadoc jar:

mvn deploy:deploy-file -Dfile=whack-1.0.0-javadoc.jar \
                       -Dclassifier=javadoc
                       -DgroupId=org.igniterealtime \                     
                       -DartifactId=whack \
                       -Dversion=1.0.0 \
                       -Dpackaging=jar \
                       -Durl=https://myhost.com/nexus/content/repositories/thirdparty/
like image 87
amra Avatar answered Oct 24 '22 10:10

amra


you need to additionally specify the -DrepositoryId

like image 23
pavel Avatar answered Oct 24 '22 11:10

pavel