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