1. 程式人生 > 實用技巧 >maven將本地jar包新增到本地倉庫

maven將本地jar包新增到本地倉庫

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包是一模一樣的,沒什麼不同之處。