maven deploy上传本地jar至私服
現(xiàn)在做java這一塊的研發(fā)基本上都是使用maven作為項目jar包的管理工具,而且用到的jar一般都是公網(wǎng)服務(wù)器所存在的例如我一般到https://mvnrepository.com/ 中獲取所需jar的依賴配置信息;
但是也有時會遇到公網(wǎng)中不存在的例如自己封裝的相關(guān)jar、第三方服務(wù)jar等,這時我們就需要想辦法將這種jar上傳到我們的私服中,以便大家使用!
我是通過使用maven的deploy命令將本地jar上傳到指定的私服中,步驟如下:
1.當(dāng)然首先需要搭建一個私服環(huán)境,此處不做過多的介紹
2.配置maven環(huán)境變量
3.執(zhí)行命令上傳
命令格式如下:
mvn deploy:deploy-file -Dmaven.test.skip=true -Dfile=E:\jar\alipay-sdk-java20170324180803.jar -DgroupId=com.alipay -DartifactId=sdk-java -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar -DrepositoryId=snapshots -Durl=http://10.0.2.xx:8080/nexus/content/repositories/snapshots/各參數(shù)代表含義為:
-Dmaven.test.skip=true ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //跳過編譯、測試 -Dfile=E:\jar\alipay-sdk-java20170324180803.jar ? ? ?//jar包文件地址,絕對路徑 -DgroupId=com.alipay ? ? ? ? ? ? ? ? ? ? ? ? ? //gruopId,可自定義 -DartifactId=sdk-java ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//artifactId,可自定義 -Dversion ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //版本號 -Dpackaging ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //打包方式 -DrepositoryId ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //遠(yuǎn)程庫服務(wù)器ID -Durl ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //遠(yuǎn)程庫服務(wù)器地址注:可能出現(xiàn)的問題
1.Return code is: 401, ReasonPhrase:Unauthorized
說明沒有配置權(quán)限:打開maven conf 下的setting.xml 中加入如下代碼:
<server><id>snapshots</id><username>admin</username><password>admin</password></server>因為我將jar上傳至http://10.0.2.xx:8080/nexus/content/repositories/snapshots/?所以-DrepositoryId=snapshots,而且授權(quán)id也是<id>snapshots</id>,如果你要上傳到其它倉庫下記得更改DrepositoryId和授權(quán)id
2.Return code is: 400, ReasonPhrase: Bad Request
(1)出現(xiàn)該問題有可能是已經(jīng)上傳過了這個jar,但是policy沒有選擇Allow Redeploy;
(2)有可能版本不符,快照版不能選擇Release
(3)可以嘗試更改下版本 -Dversion=1.0.0-SNAPSHOT?
總結(jié)
以上是生活随笔為你收集整理的maven deploy上传本地jar至私服的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全网最全Python项目体系练习500例
- 下一篇: 计组—存储以及字、位扩展