日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Nexus-在项目中使用Maven私服,Deploy到私服、上传第三方jar包、在项目中使用私服jar包

發(fā)布時間:2025/3/19 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Nexus-在项目中使用Maven私服,Deploy到私服、上传第三方jar包、在项目中使用私服jar包 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

場景

Ubuntu Server 上使用Docker Compose 部署Nexus(圖文教程):

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/101111611

在上面已經(jīng)實現(xiàn)部署Nexus后的效果是

?

為什么要搭建私服

有時合作開發(fā)時,為了不泄露源碼但是還能允許你調(diào)用,或者公司內(nèi)部自己的依賴jar包,只能在本公司內(nèi)用,并且再官方中央倉庫中沒有。類似情況下都需要搭建Maven私服。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
關(guān)注公眾號
霸道的程序猿
獲取編程相關(guān)電子書、教程推送與免費下載。

實現(xiàn)

Deploy依賴到私服

配置認(rèn)證信息

找到Maven的安裝目錄

?

conf下的setting.xml中找到server節(jié)點。

?

配置認(rèn)證節(jié)點,因為私服不是誰都能使用,所以需要配置用戶名和密碼,這里的密碼是上面搭建Nexus服務(wù)時所設(shè)置的密碼。

<server><id>nexus-releases</id><username>admin</username><password>admin123</password></server><server><id>nexus-snapshots</id><username>admin</username><password>admin123</password></server>

修改之后,保存。

?

注:

nexues-releases:用于發(fā)布Release版本

nexus-snapshots:用于發(fā)布Snapshot版本(快照版),快照版會自動加一個時間作為標(biāo)識。

?

配置自動化部署

在項目的pom.xml中加入如下代碼:

<distributionManagement><repository><id>nexus-releases</id><name>Nexus Release Repository</name><url>http://192.168.208.134:8081/repository/maven-releases/</url></repository><snapshotRepository><id>nexus-snapshots</id><name>Nexus Snapshot Repository</name><url>http://192.168.208.134:8081/repository/maven-snapshots/</url></snapshotRepository></distributionManagement>

這里是使用IDEA新建的maven項目

注:

1.ID名稱要與settings.xml中Servers配置的ID保持一致。

2.項目版本號中有SNAPSHOT標(biāo)識的,會發(fā)布到Nexus Snapshots Respository,否則發(fā)布到Nexus Release Repository,并根據(jù)ID去匹配授權(quán)賬號。

3.這里的url是Nexus服務(wù)上的url。

?

部署

打開IDEA下的Ternial,輸入:

mvn deploy

?

可以看到其部署效果

?

此時刷新Nexus服務(wù)的url,找到Browse下的maven-snapshots

?

部署成功。

然后打開IDEA--settings-maven,然后勾選上總是更新快照。

?

這樣就能用到最新的快照版本。

上傳第三方j(luò)ar包

有時在官方倉庫沒有的jar包,需要上傳到私服上,供大家使用。

mvn deploy:deploy-file -DgroupId=com.google.code.kaptcha -DartifactId=kaptcha -Dversion=2.3.2 -Dpackaging=jar -Dfile=C:\Users\Administrator\Desktop\kaptcha-2.3.2.jar -Durl=http://192.168.208.134:8081/repository/maven-releases/ -DrepositoryId=nexus-releases

命令解釋:

-DgroupId=                          自定義
-DartifactId=                        自定義
-Dversion=                          自定義? 三個自定義,構(gòu)成pom.xml文件中的坐標(biāo)
-Dpackaging=jar                       上傳的類型是jar類型
-Dfile=??????????????                    jar的本地磁盤位置
-Durl=?????????????????????????????????????????????    ????????????????????????  hosted資源庫的地址
-DrepositoryId=nexus-releases                setting.xml文件中配置的ID
?

上傳成功效果

?

此時再回到瀏覽器,刷新。

?

在項目中使用私服jar包

配置代理倉庫

在需要從私服中下載jar包的項目的pom.xml中加入如下配置:

<repositories><repository><id>nexus</id><name>Nexus Repository</name><url>http://192.168.208.134:8081/repository/maven-public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories><!-- 私服倉庫配置:從私服下載--><pluginRepositories><pluginRepository><id>nexus</id><name>Nexus Plugin Repository</name><url>http://192.168.208.134:8081/repository/maven-public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></pluginRepository></pluginRepositories>

為什么是從public進(jìn)行下載,

因為公共倉庫是發(fā)行倉庫和快照倉庫的映射,把兩個倉庫結(jié)合起來。

下面這段代碼

<releases><enabled>true</enabled> </releases> <snapshots><enabled>true</enabled> </snapshots>

作用是配置是否依賴發(fā)行版和是否依賴快照版。

怎樣使用私服jar包。

找到要下載的jar包的坐標(biāo)配置,加入到pom中,那么就會先從私服去找對應(yīng)的jar包,然后再去官服去找jar包。

?

總結(jié)

以上是生活随笔為你收集整理的Nexus-在项目中使用Maven私服,Deploy到私服、上传第三方jar包、在项目中使用私服jar包的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。