码迷,mamicode.com
首页 > 其他好文 > 详细

Maven发布项目到私服

时间:2015-02-12 09:18:44      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:maven项目发布

          首先在项目的pom.xm文件中配置:

     <distributionManagement>
      <repository>
          <id>releases</id>
          <name>releases repo</name>
          <url>http://localhost:8081/nexus/content/repositories/releases/</url>
      </repository>
      <snapshotRepository>
        <id>snapshots</id>      
        <name>snapshots repo</name>
        <url>http://localhost:8081/nexus/content/repositories/snapshots/</url>
      </snapshotRepository>
  </distributionManagement>

通过右击pom.xml--->run as--->run configurations在goals中输入 clean deploy 发布项目,在maven控制台会报这样的一个错误: Return code is: 401, ReasonPhrase: Unauthorized. -> [Help 1][ERROR]    这是是因为我们还没有获得发布项目到私服上的权限,需要在settings.xml中的servers节点下配置:

       <server>
      <id>releases</id> //指向repository的id
      <username>deployment</username>
      <password>deployment123</password>
    </server>    
     <server>
      <id>snapshots</id>
      <username>deployment</username>
      <password>deployment123</password>
    </server>    

此时我们就可以看到snapshots仓库中发布的项目.


有时候一个公司可能同时开发几个不同的项目,这个时候我们希望将不同的项目发布到不同的仓库中,并且对于每一个项目只能有该项目的开发人员发布项目到指定的仓库中去,在这个时候我们就需要通过基于角色的权限管理来实现,例如有role1、role2两个不同的角色可以是实现不同的操作,我们通过将role1分配给用户user1、user2,将role2分配给用户user3,user4,这样不同的用户就具有不同的权限。

   技术分享

  选择hosted Repository

技术分享


 再次选择hosted Repository,创建snapshot类型的仓库

 

接下来选择security下的privileges,然后点击add按钮选择Repository Target Privilege,来配置允许对仓库进行的操作

技术分享


技术分享

技术分享


接下来创建角色:

 选择security下的roles ,同样单击add 选择nexus role

  技术分享

  

接下来创建用户并且分配角色:

选择security下的users ,同样单击add 选择nexus user

技术分享



此时在项目的pom.xml中配置:

  <distributionManagement>
      <repository>
          <id>releases</id>
          <name>releases repo</name>
          <url>http://localhost:8081/nexus/content/repositories/myReleases/</url>
      </repository>
      <snapshotRepository>
        <id>snapshots</id>      
        <name>snapshots repo</name>
        <url>http://localhost:8081/nexus/content/repositories/mySnapshots/</url>
      </snapshotRepository>
  </distributionManagement>



在settings.xml中配置:

     <server>
      <id>releases</id>
      <username>nexus</username>
      <password>nexus123</password>
    </server>    
     <server>
      <id>snapshots</id>
      <username>nexus</username>
      <password>nexus123</password>
    </server>    
  </servers>

项目就可以发布成功。



 

Maven发布项目到私服

标签:maven项目发布

原文地址:http://blog.csdn.net/u013516966/article/details/43755941

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!