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包。
如下圖:

接下來,介紹一下如何將直接從網上下載的jar包通過maven的相關命令,讓其到maven的本地倉庫里
1、下載jar包

首先去maven的中心倉庫下載一個ojdbc的jar包,下載地址見上圖。再到我的本地maven倉庫下看看有沒有oracle開頭的jar包文件,如下:

由圖可見,並沒有以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
終端運行效果:

本地maven倉庫:
可見,多了一個oracle文件夾,打開到jar包所在路徑,如下:

可見還是生成了配置文件,但是並不是4個,所以,這配置文件的個數不一定,但是肯定要有配置文件的存在,以供maven工具進行識別該jar包的存在。這個時候,這樣的jar包和通過項目的pom文件所下載的jar包是一模一樣的,沒什么不同之處。