ubuntu系統上,用nexus搭建maven私服
1.選擇下載版本,地址https://www.sonatype.com/download-oss-sonatype
Nexus提供了兩種安裝方式,內嵌Jetty的捆綁包(bundle)和WAR包。前者解壓後即可單獨運行,只要系統中安裝了JRE,後者需要一個Servlet容器來運行.
2.解壓開tar包,執行bin/nexus shell文件,如./nexusstart(啓動)
3.修改端口 修改conf/nexus.properties文件,下的application-prot屬性即可,然後重啓nexus
瀏覽器打開地址如下:
http://localhost:8061/nexus/#welcome成功啓動nexus
4.點擊右上角login默認的用戶名和密碼:admin/admin123登錄
4.1點擊central配置遠程倉庫
設置DownloadRemote Indexes未true,纔會去遠程倉庫同步索引,
再回到列表,右擊點擊repairindex或updateindex進行本地和遠程同步
回到左邊菜單,有個scheduledtasks可以查看正在執行的任務
注:這裏比較容易失敗,可以建立定時任務,定期去更新
5.上傳本地jar到私服
選擇相應版本,如releases,在選項卡中選擇artifactupload
GAVDefinition有兩種上傳方式
1.pom文件方式
2.自定義方式jar包
設置Group組名,Artifact和version版本號,添加自定義jar包,source包等,點擊最下面的uploadartifact即可上傳成功,在browseindex可以查看你當前上傳的jar,或者搜索也可以查看到。
將這段xml放到maven的pom裏即可下載
4.3還有一個組的概念
從右邊把需要的倉庫拉到左邊即可
注,maven裏conf/setting.xml,配置jar包下載這個組地址,即可下載,這個組裏的所有倉庫的jar
<profile>
<id>dev</id>
<repositories>
<repository>
<id>public</id>
<name>publicrepository</name>
<url>http://192.168.19.91:8081/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>public</id>
<name>publicrepository</name>
<url>http://192.168.19.91:8081/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
注,修改ip和端口
Nexus的倉庫分爲這麼幾類:
-
hosted宿主倉庫:主要用於部署無法從公共倉庫獲取的構件(如oracle的JDBC驅動)以及自己或第三方的項目構件;
-
proxy代理倉庫:代理公共的遠程倉庫;
-
virtual虛擬倉庫:用於適配Maven1;
-
group倉庫組:Nexus通過倉庫組的概念統一管理多個倉庫,這樣我們在項目中直接請求倉庫組即可請求到倉庫組管理的多個倉庫。
PublicRepositories:倉庫組
3rdparty:無法從公共倉庫獲得的第三方發佈版本的構件倉庫
ApacheSnapshots:用了代理ApacheMaven倉庫快照版本的構件倉庫
Central:用來代理maven中央倉庫中發佈版本構件的倉庫
CentralM1 shadow:用於提供中央倉庫中M1格式的發佈版本的構件鏡像倉庫
CodehausSnapshots:用來代理CodehausMaven倉庫的快照版本構件的倉庫
Releases:用來部署管理內部的發佈版本構件的宿主類型倉庫
Snapshots:用來部署管理內部的快照版本構件的宿主類型倉庫