maven將本地jar包新增到本地倉庫
阿新 • • 發佈:2020-08-04
maven將本地jar包新增到本地倉庫
引言:
之前一直認為jar包分為第三方jar包和maven的jar包,現在想想是多麼的可笑。其實都是jar包,並沒有第三方jar包之分,第三方jar包這個說法是在,你需要用到jar包裡的介面的時候才說的。
比如說,你在做微信支付,那麼支付功能不是自己做的,所以這時候你就需要呼叫一個支付介面,然而這個介面在一個jar包內,這個時候可以說引入第三方jar包,或者說第三方sdk。
正題:為什麼我之前會認為jar包有第三方和mavenjar包呢?
那是因為我之前有一次直接將jar包放在maven的本地倉庫裡,然後在專案的pom檔案裡引用,死活引用不到,我就認為可能不是maven的jar包(直接在pom檔案下載的jar包)引起的。所以就自作主張給不是pom檔案下載的jar包叫做第三方jar包。現在才明白,原來直接將jar包放入maven的本地倉庫裡maven是識別不了的,maven作為包的管理工具那肯定是要讓maven能夠識別的jar包才可以讓專案引用。
比對下maven本地倉庫的兩種jar包,一種是直接從網上下載下來放在倉庫內的,另一種是從專案的pom檔案下載的jar包。
如下圖:
Image.png
接下來,介紹一下如何將直接從網上下載的jar包通過maven的相關命令,讓其到maven的本地倉庫裡
1、下載jar包
1596531987959-Image.png
首先去maven的中心倉庫下載一個ojdbc的jar包,下載地址見上圖。再到我的本地maven倉庫下看看有沒有oracle開頭的jar包檔案,如下:
1596531987960-Image.png
由圖可見,並沒有以oracle開頭的資料夾。注意看中心倉庫那張圖片,該jar包的標籤內容。如下:
<dependency>
<groupId>oracle</groupId>
<artifactId>ojdbc</artifactId>
<version>1.4</version>
</dependency>
然後執行命令格式為:
mvn install:install-file -Dfile=jar包地址(最好不要出現中文路徑) -DgroupId=<groupId>標籤內的內容 -DartifactId=<artifactId>標籤內的內容-Dversion=<version>標籤內的內容 -Dpackaging=jar
以上例子的命令為:
mvn install:install-file -Dfile=E:\document\ojdbc-1.4.jar -DgroupId=oracle -DartifactId=ojdbc -Dversion=1.4 -Dpackaging=jar
終端執行效果:
1596531987961-Image.png
本地maven倉庫:
可見,多了一個oracle資料夾,開啟到jar包所在路徑,如下:
1596531987963-Image.png
可見還是生成了配置檔案,但是並不是4個,所以,這配置檔案的個數不一定,但是肯定要有配置檔案的存在,以供maven工具進行識別該jar包的存在。這個時候,這樣的jar包和通過專案的pom檔案所下載的jar包是一模一樣的,沒什麼不同之處。