利用maven deploy上傳本地jar至私服的方法
1.場景
首先目前依賴包的管理大多數(shù)是maven,其次當(dāng)使用到第三方的包的時候,官方的倉庫或者aliyun的maven都是沒有這個包的。那么,為了方便我們使用 我們需要將本地的這個jar上傳到 公司內(nèi)部的私服去,以便大家使用
2. 上操作
我們直接使用maven-deploy插件進(jìn)行上傳
mvn deploy:deploy-file -DgroupId=xxx.openplatform.shared -DartifactId=sdk.client -Dversion=2.9.0-SNAPSHOT -Dpackaging=jar -DgeneratePom=true -Dfile=./src/main/resources/lib/xx-sdk-java-1.2.0.jar -Durl='http://xxxx:8083/nexus/content/repositories/snapshots/' -DrepositoryId=xxx-snapshots
各參數(shù)代表含義為:
groupId: 待上傳的jar groupId
artifactId:待上傳jar artifactId
version:jar的版本
generatePom: true 表示生成pom
file:表示文件路徑 (可以為相對路徑或者絕對路徑)確保文件存在
url :私服的地址
repositoryId : 私服地址的id
3. 可能會遇到的問題以及解決辦法
- 問題1: 上傳失敗 Return code is: 400, ReasonPhrase: Bad Request. -> [Help 1]
原因(1)可能私服已經(jīng)存在jar 但是私服倉庫未配置允許重新部署
解決:修改私服倉庫配置為允許重新部署 如下圖
一般情況 snapshots 版本是允許重新部署的 release版本是不允許的 當(dāng)然也有例外 release 一般不建議允許重新部署 (線上的穩(wěn)定版本 如果確認(rèn)沒問題的話 建議升級版本號 在重新執(zhí)行命令)
原因 (2)有可能版本不符,快照版不能選擇Release
解決:選擇對應(yīng)的 倉庫上傳
- 問題二: Return code is: 401, ReasonPhrase:Unauthorized
未進(jìn)行配置訪問私服的賬號密碼
解決:添加私服的賬號密碼 位置: maven安裝位置/conf/settings.xml
找到servers 標(biāo)簽 并里面 在進(jìn)行添加內(nèi)容 如下
<server> <id>xxx-snapshots</id> <username>admin</username> <password>admin</password> </server>
id要和上傳時候指定的repositoryId 相同 不然仍會報錯
- 問題三:私服上的包拉不下來
解決:idea切換到項目終端 執(zhí)行如下命令 強制拉取 并且clean install 跳過測試類
mvn -U clean install -DskipTest=true
擴展:maven 本地jar包使用deploy命令上傳到私服
deploy命名如下,相關(guān)參數(shù)可根據(jù)自身本地實際情況調(diào)整:
?mvn deploy:deploy-file? -Dmaven.test.skip=true -Dfile=/Users/xxx/ImpalaJDBC41-2.6.4.jar -DgroupId=com.cloudera? -DartifactId=ImpalaJDBC41 -Dversion=2.6.4 -Dpackaging=jar? -DrepositoryId=nexus-release -Durl=https://www.xxx.cn/artifactory/maven-public/
使用這種方法時要注意的是如果你要安裝的jar是位于本地repository的目錄下,即-Dfile={本地repository目錄}下,這個命令就會出錯(Cannot deploy artifact from the local repository…)
解決方法:
1、將你要安裝的jar復(fù)制到其他目錄再安裝,只要不在本地倉庫目錄都可以
2、如果1還不行的話,可能私服已禁止本地deploy,需要協(xié)調(diào)私服管理員,然后再注冊審核通過后,會創(chuàng)建jenkins job來deploy
到此這篇關(guān)于maven deploy上傳本地jar至私服的文章就介紹到這了,更多相關(guān)maven 上傳本地jar至私服內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java利用iTextPDF庫實現(xiàn)制作PDF表格模板并填充數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了如何通過Java的iTextPDF庫制作一個PDF表格模板并填充數(shù)據(jù),文中的示例代碼講解詳細(xì),感興趣的小伙伴快跟隨小編一起學(xué)習(xí)一下吧2023-12-12SpringCloud基于Feign的可編程式接口調(diào)用實現(xiàn)
本文主要介紹了SpringCloud基于Feign的可編程式接口調(diào)用實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04java 出現(xiàn)問題javax.servlet.http.HttpServlet was not found解決方法
這篇文章主要介紹了java 出現(xiàn)問題javax.servlet.http.HttpServlet was not found解決方法的相關(guān)資料,需要的朋友可以參考下2016-11-11spring boot配置MySQL數(shù)據(jù)庫連接、Hikari連接池和Mybatis的簡單配置方法
這篇文章主要介紹了spring boot配置MySQL數(shù)據(jù)庫連接、Hikari連接池和Mybatis的簡單配置方法,需要的朋友可以參考下2018-03-03springcloud項目里application.yml不加載的坑及解決
這篇文章主要介紹了springcloud項目里application.yml不加載的坑及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07Java并發(fā)工具類CountDownLatch CyclicBarrier使用詳解
這篇文章主要為大家介紹了Java并發(fā)工具類CountDownLatch CyclicBarrier使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06