將第三方jar包安裝到本地maven倉庫


這里有2個案例,需要手動發出Maven命令包括一個 jar 到 Maven 的本地資源庫。

  1. 要使用的 jar 不存在於 Maven 的中心儲存庫中。
  1. 您創建了一個自定義的 jar ,而另一個 Maven 項目需要使用。

PS,還是有很多 jar 不支持 Maven 的。

案例學習

例如,kaptcha,它是一個流行的第三方Java庫,它被用來生成 “驗證碼” 的圖片,以阻止垃圾郵件,但它不在 Maven 的中央倉庫中。

在本教程中,我們將告訴你如何安裝 “kaptcha” jar 到Maven 的本地資源庫。

1. mvn 安裝

下載 “kaptcha”,將其解壓縮並將 kaptcha-version.jar 復制到其他地方,比如:C盤。發出下面的命令:

mvn install:install-file -Dfile=c:\kaptcha-{version}.jar -DgroupId=com.google.code -DartifactId=kaptcha -Dversion={version} -Dpackaging=jar

示例:

D:\>mvn install:install-file -Dfile=c:\kaptcha-2.3.jar -DgroupId=com.google.code

-DartifactId=kaptcha -Dversion=2.3 -Dpackaging=jar

[INFO] Scanning for projects...

[INFO] Searching repository for plugin with prefix: 'install'.

[INFO] ------------------------------------------------------------------------

[INFO] Building Maven Default Project

[INFO]    task-segment: [install:install-file] (aggregator-style)

[INFO] ------------------------------------------------------------------------

[INFO] [install:install-file]

[INFO] Installing c:\kaptcha-2.3.jar to

D:\maven_repo\com\google\code\kaptcha\2.3\kaptcha-2.3.jar

[INFO] ------------------------------------------------------------------------

[INFO] BUILD SUCCESSFUL

[INFO] ------------------------------------------------------------------------

[INFO] Total time: < 1 second

[INFO] Finished at: Tue May 12 13:41:42 SGT 2014

[INFO] Final Memory: 3M/6M

[INFO] ------------------------------------------------------------------------

 

現在,“kaptcha” jar被復制到 Maven 本地存儲庫。

2. pom.xml

安裝完畢后,就在 pom.xml 中聲明 kaptcha 的坐標。

<dependency>

      <groupId>com.google.code</groupId>

      <artifactId>kaptcha</artifactId>

      <version>2.3</version>

 </dependency>

3. 完成

構建它,現在 “kaptcha” jar 能夠從你的 Maven 本地存儲庫檢索了。

 

 

Maven內置變量說明: 

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM