(轉)如何在maven的pom.xml中添加本地jar包

轉載自: https://www.cnblogs.com/lixuwu/p/5855031.html

1 maven本地倉庫認識

maven本地倉庫中的jar目錄通常分爲三層:圖中的1 2 3分別以下所示:html

1 groupId
    2 artifactId
        3 version
      4 jar包的依賴

 

若是要將maven本地倉庫中的jar包添加到項目中,直接打開4 xx.pom文件,將改jar包的相關依賴複製pom.xml文件中便可。apache

2 將本地jar包添加到本地倉庫

2.1 添加jar到本地倉庫

原則上Maven的設計是不須要這麼作的,由於pom.xml中依賴的jar包會自動實現從中央倉庫下載到本地倉庫。maven

但也有特殊狀況。oop

好比我下載了ui

lucene-queryparser-4.6.1.jarspa

怎麼添加jar到本地倉庫呢?
步驟:
1.cmd命令進入該jar包所在路徑命令行

(快捷鍵:shift+右鍵  選擇在此處打開命令行窗口)設計

ps:jar包能夠在任意一個文件夾目錄下面,不要放在分區的根目錄,也不要本身去建立maven中的相關目錄。3d

不須要去建立相關目錄,mvn install以後會自動將相關的jar包放入本地倉庫。code


2.執行命令:

mvn install:install-file -Dfile=lucene-queryparser-4.6.1.jar -DgroupId=org.apache.lucene -DartifactId=lucene-queryparser -Dversion=4.6.1 -Dpackaging=jar

其中:-DgroupId和-DartifactId的做用是指定了這個jar包在repository的安裝路徑,只是用來告訴項目去這個路徑下尋找這個名稱的jar包。

通常用的jar包都是在mven倉庫中下載的,因此groupId和artifactId直接將複製maven倉庫中的設置便可。

<!-- https://mvnrepository.com/artifact/org.apache.lucene/lucene-queryparser -->
<dependency>
    <groupId>org.apache.lucene</groupId>
    <artifactId>lucene-queryparser</artifactId>
    <version>4.6.1</version>
</dependency>

 

 

好比:
mvn install:install-file -Dfile=hadoop-hdfs-2.2.0.jar -DgroupId=org.apache.hadoop -DartifactId=hadoop-hdfs -Dversion=2.2.0 -D -Dpackaging=jar
就是指把hadoop-hdfs-2.2.0.jar安裝到repository\org.apache.hadoop\hadoop-hdfs\2.2.0目錄下,執行完命令後,若是須要在項目中使用這個jar,則在pom.xml中添加以下配置便可:

<dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-hdfs</artifactId>
      <version>2.2.0</version>
</dependency>

 

ps:執行上述命令後,在該jar包所在目錄中會生成一個 jar包名字.pom的文件,裏面有描述改jar包的座標信息。
提示:文件目錄只是標識jar的位置,也能夠直接把目錄下的jar包替換,就可以用之前的座標,在項目中導入替換的jar包。這麼作比較省事,可是並不提倡這麼作。

注意,在命令中,每一個參數前有個-D標識。

 2.2 添加lib目錄下的jar包到本地倉庫

怎麼在pom.xml中添加項目中libs下的jar呢,而不是從本地倉庫中添加?

一、首先將要添加的jar包複製到項目中的libs文件夾下

二、而後在pom.xml中添加以下代碼:

複製代碼

<dependency> 
  <groupId>htmlunit</groupId> 
  <artifactId>htmlunit</artifactId> 
  <version>2.21-OSGi</version> 
  <scope>system</scope> 
  <systemPath>${project.basedir}/libs/htmlunit-2.21-OSGi.jar</systemPath> 
</dependency>

複製代碼

注意libs文件夾下的這個jar包不須要Add to Build Path

(該方法並未作嘗試)

下面是maven中央倉庫的地址:

http://mvnrepository.com/artifact/net.sourceforge.htmlunit/htmlunit/2.21

能夠在這裏搜索想要的jar包,而後複製對應的依賴代碼到你項目中的pom.xml中,則對應的jar包將下載到你本地的maven倉庫中,以提供給你使用。

相關文章
相關標籤/搜索