maven怎麼 引入(或引用/使用) 自定義(或本地/第三方) jar的三種方式 圖文教程

準備工作:

假如我有一個自定義jar是:123456.jar,下載地址http://download.csdn.net/detail/wabiaozia/9870838

如果不想下載,可以按照https://jingyan.baidu.com/article/046a7b3ed8b23ef9c27fa9b9.html 操作即可得到jar。

jar包裏的源碼是:

public class RegexUtils {

	 /**
     * 驗證Email
     * @param email email地址,格式:[email protected][email protected],xxx代表郵件服務商
     * @return 驗證成功返回true,驗證失敗返回false
     */ 
    public static boolean checkEmail(String email) { 
        String regex = "\\w+@\\w+\\.[a-z]+(\\.[a-z]+)?"; 
        return Pattern.matches(regex, email); }
    } 

使用建議:

建議使用第二種方式引入本地jar


引入自定義jar方式一:

1 首先找到你的maven的配置文件{你maven的路徑}\conf\settings.xml,然後打開settings.xml,查看你存放本地jar路徑的根目錄。例如我的maven根目錄是C:\Users\user\.m2\localRepository。我自己定義的jar只要按照一定的規則放在這個根目錄下就行了,下文會具體介紹。




2 假如你自定義的jar包是123456.jar,你想在你項目的pom.xml中這樣引入你的jar包

<dependency>  
            <groupId>123456</groupId>  
            <artifactId>123456</artifactId>  
            <version>1.0</version>  
</dependency> 

3 在你的根目錄文件夾下建立如下文件夾

在根目錄C:\Users\user\.m2\localRepository\  創建123456文件夾 ---->再創建123456文件夾----->再創建1.0文件夾

最後把123456.jar放到1.0文件夾下

轉載請標明鏈接:http://blog.csdn.net/wabiaozia?viewmode=contents

如下圖所示


4 把123456.jar改爲123456-1.0.jar,並創建文件123456-1.0.pom。這裏注意,創建的文件後綴是點pom而不是點xml(是" . pom"不是".xml")。

然後在123456-1.0.pom中寫如下內容

<project> 
  <modelVersion>1.0.0</modelVersion> 
  <groupId>123456</groupId> 
  <artifactId>123456</artifactId> 
  <version>1.0</version> 
</project> 
5 在你的項目的pom.xml依賴中引入就行了

<dependency>  
            <groupId>123456</groupId>  
            <artifactId>123456</artifactId>  
            <version>1.0</version>  
</dependency>

6 如果你的pom.xml報錯


然後勾選 force update of snapshots/releases 選項即可。

7 項目代碼中使用:

boolean b = RegexUtils.checkEmail(email);


8 關於groupId,artifactId怎麼寫再舉一例

jar包的位置


pom.xml中引入

<dependency>
	      <groupId>com.taibao</groupId>
	      <artifactId>Butils</artifactId>
	      <version>1.0</version>
</dependency>

引入自定義jar方法二:

參考http://blog.csdn.net/tech4j/article/details/45372263

確保在cmd當中可以正確使用mvn命令(通過mvn -v可以驗證),然後使用如下命令:

mvn install:install-file -Dfile=D:\ojdbc7.jar -DgroupId=com.tech4j.driver -DartifactId=oracle-connector-java -Dversion=12.1 -Dpackaging=jar
在這段命令中,-Dfile參數指你自定義JAR包文件所在的路徑,並依次指定了自定義的GroupId、ArtifactId和Version信息。 
通過這種方式,可以簡單快速地將第三方JAR包安裝到本地倉庫中供Maven項目依賴使用。例如:

<dependency>
    <groupId>com.tech4j.driver</groupId>  
    <artifactId>oracle-connector-java</artifactId>  
    <version>12.1</version>  
</dependency>

我博客所有文章鏈接:http://blog.csdn.net/wabiaozia?viewmode=contents

引入自定義jar方法三:

<dependency>
            <groupId>org.jasig.cas</groupId>
            <artifactId>cas-server-webapp</artifactId>
            <version>4.2.3</version>
            <type>war</type>
            <!-- 注意scope是system  -->
            <scope>system</scope>
           <!--  <systemPath>C:/Users/ice-wee/Downloads/cas-server-webapp-4.0.3.war</systemPath> -->
            <systemPath>${project.basedir}/suiyijiandewenjianjia/cas-server-webapp-4.0.3.war</systemPath>
            <!-- systemPath 可以寫  1 本地路徑 也可以寫 2 項目根路徑,項目根路徑不是相對classpath 。 -->
        </dependency>


3.1 Maven內置變量說明:
${basedir} 項目根目錄
${project.build.directory} 構建目錄,缺省爲target
${project.build.outputDirectory} 構建過程輸出目錄,缺省爲target/classes
${project.build.finalName} 產出物名稱,缺省爲${project.artifactId}-${project.version}
${project.packaging} 打包類型,缺省爲jar
${project.xxx} 當前pom文件的任意節點的內容

3.2 使用舉例

項目根路徑見圖:我博客所有文章鏈接:http://blog.csdn.net/wabiaozia?viewmode=contents

項目webapp下建一個文件夾(folder):suiyijiandewenjianjia,把cas-server-webapp-4.0.3.war拷到此文件夾


總結:

用第三種方式用systemPath 打包時是不會把jar打到war中的,如果想打到war中可以使用我文中提到的前兩種方式。我們項目中一般是缺少某個jar或者某幾個jar,從簡便和速度效率的角度來說我最推薦的引入本地jar是文中提到的第二種方式。如果缺的jar多的話可以使用批量導入方式,但是並不建議這樣做,因爲缺少很多jar你首先應該考慮的是,爲什麼不把環境配好,不讓項目缺少那麼多jar。

最後:如何把本地jar一同打到war包中

http://www.cnblogs.com/hzm112567/p/6531654.html

我博客所有文章鏈接:http://blog.csdn.net/wabiaozia?viewmode=contents

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章