向 Maven2 代理 Maven-proxy 代碼庫添加中心庫沒有的 jar 包(轉)

有一些第三方庫在 Maven2 的中心代碼庫裏沒有,但項目組需要,怎麼辦呢?

假設我們已經安裝好了Maven-proxy系統,向Maven-proxy的Local Repository目錄里加入相應的文件,

假設我們要添加ibatis-2.3.0.667.jar到 Mavne-proxy裏,具體操作如下:

約定ibatis-2.3.0.667.jar 的 groupId = com.ibatis,artifactId = ibatis,version = 2.3.0.667
假設 Maven-proxy 的 LocalRepository路徑爲:/var/maven-proxy/target/repo

(1) 複製 jar 包到 Maven-proxy 的本地代碼庫

python 代碼
  1. $ cd /var/maven-proxy/target/repo   
  2.   
  3. $ mkdir com   
  4. $ mkdir com/ibatis   
  5. $ mkdir com/ibatis/ibatis   
  6. $ mkdir com/ibatis/ibatis/2.3.0.667   
  7.   
  8. $ cp ibatis-2.3.0.667.jar /var/maven-proxy/target/repo/com/ibatis/ibatis/2.3.0.667  

(2) 編寫 pom 文件:

$ vi ibatis-2.3.0.667.pom

文件內容如下:
xml 代碼
  1. <project>     
  2.     <modelVersion>4.0.0modelVersion>     
  3.     <groupId>com.ibatisgroupId>     
  4.     <artifactId>ibatisartifactId>     
  5.     <version>2.3.0.667version>  
  6. <project>  

如果有依賴關係,可以將依賴關係描述在 pom 文件裏。

(3) 製作 checksum 文件:

需要用Ant 來生成 jar 包和 pom 文件的 checksum 文件,建立build.xml,如下:
xml 代碼
  1. <project default="checksum">  
  2.   <target name="checksum">  
  3.     <checksum file="ibatis-2.3.0.667.jar" algorithm="SHA" fileext=".sha1"/>  
  4.     <checksum file="ibatis-2.3.0.667.pom" algorithm="SHA" fileext=".sha1"/>  
  5.   <target>  
  6. <project>  

執行這個 Ant 任務

$ ant build.xml

會生成 ibatis-2.3.0.667.jar.sha1 和 ibatis-2.3.0.667.pom.sha1 文件,在項目的 pom.xml文件裏就可以添加這個庫了,添加如下 dependency:

xml 代碼
  1. <dependency>  
  2.   <groupId>com.ibatisgroupId>  
  3.   <artifactId>ibatisartifactId>  
  4.   <version>2.3.0.667version>  
  5. <dependency>  

這樣,mvn 會從 Maven-proxy那裏下載這個庫了。
發佈了6 篇原創文章 · 獲贊 3 · 訪問量 5449
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章