【转】Maven常用插件使用说明之deploy

文字转载自:http://blog.csdn.net/gztly/article/details/6019586

Maven的deploy插件用于把Maven自动构建生成的版本发布到中央代理仓库如Nexus服务器上,也能把第三方依赖库(如Jar包)或一个独立的Jar包直接发布到中央代理仓库供大家共享使用。下面介绍deploy插件的具体用法。假设Nexus服务器已成功安装,Nexus控制台URL为http://10.86.10.93:18081/nexus

   1、自动构建并发布到Nexus服务器(假设发布仓库为releases)

      1)修改工程POM文件,增加以下内容:

<distributionManagement>
    <repository>
<id>nexus-releases</id>
<name>Nexus Realeases Repository</name>
<url>http://10.86.10.93:18081/nexus/content/repositories/releases</url>
    </repository>
    <snapshotRepository>
<id>nexus-snapshots</id>
<name>Nexus Snapshots Repository</name>
<url>http://10.86.10.93:18081/nexus/content/repositories/snapshots</url>
    </snapshotRepository>
</distributionManagement>

其中url对应Nexus服务器的Releases仓库路径,repository的id必须与第3)点中的server的id一致。用于发布的仓库必须为Hosted类型。

      2)修改Nexus服务器的Releases仓库属性。

         进入Nexus控制台,用admin登录。点开“Views/Repositories”选“Repositories”,在Repositories列表中选择Releases,点configuration,Deployment Policy默认为“Disable Redeploy”,点击修改为“Allow Redeploy”并保存。

      3)修改用户目录下的settings.xml文件。

         settings.xml文件路径为${user.home}/.m2或%{m2_home}/conf/。Windows7系统目录为C:/Users/用户名/.m2。

         找到<servers>,然后修改信息如下:
<servers>
     <server> 
<id>nexus-releases</id>
<username>deployment</username>
<password>deployment123</password>
     </server> 
     <server> 
<id>nexus-snapshots</id>
<username>deployment</username>
<password>deployment123</password>
     </server>
</servers>

注意:server的id必须和第1)点中的repository的id一致。

      4)重新设定用户deployment的密码。

         进入Nexus控制台,点开Security选Users,在用户列表中右键点击deployment用户,选Set Password重新设定deployment的密码为“deployment123”,当然也可设置为其他,只要与第3)点server配置一致即可。

      5)在工程主目录下(POM文件所在目录)运行“mvn deploy:deploy”即能实现版本的构建和发布。



   2、发布第三方依赖库或独立Jar包(假设发布仓库为releases,发布Jar包为test.jar)

      1)按第1点中的第2)、3)、4)点进行配置。然后进入到test.jar所在目录。

      2)执行“mvn deploy:deploy-file -DgroupId=com.test -DartifactId=test -Dversion=1.0 -Dpackaging=jar -Dfile=test.jar -Durl=http://10.86.10.93:18081/nexus/content/repositories/releases -DrepositoryId=releases”即可。

        说明:deploy:deploy-file表示发布独立的文件。

              groupId、artifactId和version可根据需要设定。

              url为Nexus服务器releases仓库路径。

              repositoryId与第1点第3)点中的server的id必须一致。

       3)顺便说一下,发布独立的Jar包也可在Nexus控制台中实现。在Repositories列表中选择Releases,点Artifact Upload,指定GAV Definition为“GAV Parameters”,然后输入相应的groupId、artifactId和version、Packaging,再点击“Select Artifact(s) to Upload...”选择指定的Jar文件,最后点“Upload Artifact(s)”即可。

猜你喜欢

转载自superich2008.iteye.com/blog/2046130