nexus常用配置
阿新 • • 發佈:2020-07-22
下壓縮包的時候,我用了代理還是下的卡住了,於是就用了1M頻寬的香港阿里雲下載,下載的特別快,就是往本地傳的特別慢,所以後面買個dell小主機,做個軟路由,這樣所有的虛擬機器都能下載了。nexus3改動比較大,之前的部落格也簡單的寫過,還能支援docker映象了。nexus2用的還是習慣了,可以把所有的jar包往sonatype-work裡面一丟就行了。
nexus的倉庫型別
具體的位置:
[root@cicd storage]# pwd /wgr/sonatype-work/nexus/storage [root@cicd storage]# ll total 0 drwxr-xr-x 4 root root 62 Jul 21 21:39 apache-snapshots drwxr-xr-x 5 root root 76 Jul 21 21:39 central drwxr-xr-x 4 root root 33 Jul 21 21:39 central-m1 drwxr-xr-x 5 root root 76 Jul 21 21:39 public drwxr-xr-x 5 root root 76 Jul 21 21:39 releases drwxr-xr-x 5 root root 76 Jul 21 21:39 snapshots drwxr-xr-x 6 root root 87 Jul 21 21:48 thirdparty [root@cicd storage]# cd public [root@cicd public]# ll total 4 -rw-r--r-- 1 root root 25 Jul 21 21:39 archetype-catalog.xml [root@cicd public]# cd .. [root@cicd storage]# ll total 0 drwxr-xr-x 4 root root 62 Jul 21 21:39 apache-snapshots drwxr-xr-x 5 root root 76 Jul 21 21:39 central drwxr-xr-x 4 root root 33 Jul 21 21:39 central-m1 drwxr-xr-x 5 root root 76 Jul 21 21:39 public drwxr-xr-x 5 root root 76 Jul 21 21:39 releases drwxr-xr-x 5 root root 76 Jul 21 21:39 snapshots drwxr-xr-x 6 root root 87 Jul 21 21:48 thirdparty [root@cicd storage]# cd central [root@cicd central]# cd ../thirdparty/ [root@cicd thirdparty]# ll total 4 -rw-r--r-- 1 root root 25 Jul 21 21:39 archetype-catalog.xml drwxr-xr-x 3 root root 22 Jul 21 21:48 com [root@cicd thirdparty]#
上傳jar包到私服上
- 需要修改settings.xml檔案,配置連線私服的使用者和密碼。此使用者名稱和密碼用於私服校驗,因為私服需要知道上傳的賬號和密碼是否和私服中的賬號密碼一直。
配置:
<server> <id>snapshots</id> <username>admin</username> <password>admin123</password> </server> <server> <id>releases</id> <username>admin</username> <password>admin123</password> </server>
releases連線釋出版本專案倉庫,snapshots連線測試版本專案倉庫
-
配置專案Pom.xml
配置私服倉庫的地址,本公司的自己的jar包會上傳到私服的宿主倉庫,根據工程的版本號決定上傳到哪個宿主倉庫,如果版本為release則上傳到release倉庫,如果版本為snapshot則上傳到私服的snapshot倉庫
<distributionManagement> <snapshotRepository> <id>snapshots</id> <name>Nexus Release Repository</name> <url>http://192.168.1.119:8081/nexus/content/repositories/snapshots/</url> </snapshotRepository> <repository> <id>releases</id> <name>Nexus Snapshot Repository</name> <url>http://192.168.1.119:8081/nexus/content/repositories/releases/</url> </repository> </distributionManagement>
注意:pom.xml和settings.xml中的id一致。
測試進行上傳:
從私服下載Jar包
管理倉庫組:
nexus中包括很多倉庫,Hosted中存放的是企業自己釋出的jar及第三方公司的jar包,porxy中存放的是中央倉庫的jar,為了方便從私服下載Jar包可以將多個倉庫一個倉庫組,每個工程需要連線私服的倉庫組下載jar包。
開啟nexus配置的倉庫組,如下圖:
上圖中倉庫組包括了本地倉庫,代理倉庫等。
在settings.xml中配置倉庫
在客戶端的settings.xml中配置私服的倉庫,需要實用profile定義倉庫
<profile>
<!--profile的id-->
<id>dev</id>
<repositories>
<repository>
<!--倉庫id,repositories可以配置多個倉庫,保證id不重複-->
<id>nexus</id>
<!--倉庫地址,即nexus倉庫組的地址-->
<url>http://192.168.1.119:8081/nexus/content/groups/public/</url>
<!--是否下載releases構件-->
<releases>
<enabled>true</enabled>
</releases>
<!--是否下載snapshots構件-->
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<!-- 外掛倉庫,maven的執行依賴外掛,也需要從私服下載外掛 -->
<pluginRepository>
<!-- 外掛倉庫的id不允許重複,如果重複後邊配置會覆蓋前邊 -->
<id>public</id>
<name>Public Repositories</name>
<url>http://192.168.1.119:8081/nexus/content/groups/public/</url>
</pluginRepository>
</pluginRepositories>
</profile>
進行下載測試: