maven之發佈項目到nexus【clean deploy命令】

原文:http://m.blog.csdn.net/article/details?id=49667971html

 

 

 

當咱們的項目開發完成之後,可能要進行發佈(若是是獨立的項目,就不須要發佈啦,若是是模塊項目,那麼就要發佈到nexus裏,供其餘開發人員下載調用。)maven

要想發佈項目到nexus裏,必須經過<distributionManagement>標籤來進行配置。在以前的文章中有介紹nexus的工廠類別,其中提到兩個:hosted裏的Releases、Snapshots.ui

當咱們發佈項目到nexus裏時,若是項目版本是x.x.x-Releases,則會發布到Releases工廠中;而項目版本是x.x.x-SNAPSHOTS則發佈到Snapshots工廠中。url

配置<distributionManagement>:.net

代碼:code

 

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

右鍵項目 --> run as  ---> maven Build... --> 輸入clean deploy命令(一開始會下載一些依賴包,淡定.....)。server

 

 

後面咱們會看到以下的提示信息:xml

 

怎麼來設置受權呢?htm

【1】:去到nexus管理界面 --- > 左側菜單欄「Security」  --> 「Users」 ,右側所列出的用戶中,只有deployment用戶纔有發佈項目到nexus的權限。blog

【2】:在setting.xml裏使用<server>標籤進行受權。server裏的id對應<distributionManagement>裏設置的id。

流程是:當執行clean deploy命令進行發佈時,首先會找到<distributionManagement>的配置,獲取配置信息。

而後若是setting.xml裏有配置server,對比id值,若是匹配的上,就驗證server裏的用戶是否擁有發佈的權限,有權限就把項目發佈到對應的倉庫裏。

setting.xml中server標籤代碼:

 

<server>
      <id>releasesId</id>
      <username>deployment</username>
      <password>deployment123</password>
    </server>

	<server>
      <id>snapshotsid</id>
      <username>deployment</username>
      <password>deployment123</password>
    </server>

至此,發佈的配置就完成了,執行clean deploy命令後,就會在nexus的Releases或Snapshots倉庫中找到發佈的項目了。

 

 

 

 

若是咱們不想把全部項目都發布到nexus的Releases或Snapshots倉庫中,而是想在nexus裏能爲每一個項目開闢一個空間,存放每一個項目本身發佈上去的依賴包。

 

要實現這種效果,須要如下幾步操做:

(1)在nexus裏爲每一個項目建立hosted類型的工廠(Releases或Snapshots兩種)

 

 

(2)在Securiy --> Privileges裏添加Releases或Snapshots兩種工廠的特權(能夠執行那些操做,如往工廠裏發佈,查看,刪除等特權)

 

 

(3)在Security --> Roles 裏添加角色,爲角色配置權限

 

(4)在Security --> Users 裏添加用戶,爲用戶設定角色

 

(5)在pom.xml裏的 <distributionManagement>把url改成對應的工廠路徑,在setting裏的server裏設定對應的用戶密碼



執行clean deploy命令後:

相關文章
相關標籤/搜索