向 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 的本地代码库

$ cd /var/maven-proxy/target/repo

$ mkdir com
$ mkdir com/ibatis
$ mkdir com/ibatis/ibatis
$ mkdir com/ibatis/ibatis/2.3.0.667

$ 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

文件内容如下:
< project >   
    
< modelVersion > 4.0 . 0 </ modelVersion >   
    
< groupId > com.ibatis </ groupId >   
    
< artifactId > ibatis </ artifactId >   
    
< version > 2.3 . 0.667 </ version >
</ project >

如果有依赖关系,可以将依赖关系描述在 pom 文件里。

(3) 制作 checksum 文件:

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

执行这个 Ant 任务

$ ant build.xml

会生成 ibatis-2.3.0.667.jar.sha1 和 ibatis-2.3.0.667.pom.sha1 文件,在项目的 pom.xml文件里就可以添加这个库了,添加如下 dependency:

     < dependency >
      
< groupId > com. ibatis </ groupId >
      
< artifactId > ibatis </ artifactId >
      
< version > 2.3 . 0.667 </ version >
    
</ dependency >

这样,mvn 会从 Maven-proxy那里下载这个库了。





你可能感兴趣的:(maven2)