1、从Maven中心库创建自己本地镜像
http://blog.csdn.net/teamlet/archive/2007/04/22/1574642.aspx
2、建立Maven2的本地代码库服务器,也就是常说的“私服”
官方的maven repository服务器特别的慢,还记得上次海底电缆事故么?官方的服务器根本就无法访问,那段时间简直要抓狂。并且官方服务器类库版本通常不是最 新,有时候想用最新版的还得自己动手。(下面会介绍如何自己动手做),所以建立一个自己的本地代码服务器对于整个团队就特别有意义。
Maven的服务器很简单,一个普通的http服务器就行,比如apache,装好apache以后。
将你本地代码库文件夹拷贝到apache安装目录下htpdocs/maven2,windows用户是C:/Documents and Settings/jeffrey/.m2/repository,linux下是 /home/Jeffrey/.m2/repository(注意.m2在linux下是隐藏文件夹)
启动apache服务器,在浏览器中输入http://localhost/maven2/repository,应该可以查看到repository的文件目录
编辑项目pom,指定本地的代码库服务器
在project中加入:
- <repositories>
- <repository>
- <id>mylibs<!--</span-->id>
- <url>http://localhost/maven2/repository<!--</span-->url>
- <!--</span-->repository>
- <!--</span-->repositories>
可以加入多个repository,mvn会按照顺序检索,如果都没有找到,最后会去找官方的服务器
3. 添加新的类库到本地代码服务器中
在maven官网有很多类库都找不到,只能自己动手,丰衣足食。
请先确认官网确实没有的情况下再自己做,毕竟还是挺麻烦的
可在以下两个网站查阅:http://mvnrepository.com/,http://repo1.maven.org/maven2/
前面已经说明了maven代码库的文件目录组织方式,同一个jar对于每个版本都有一个独立的文件夹来存放,除了jar还要有该jar的描述文件.pom,以及他们的校验文件.sh1
.pom文件里定义了该jar的名称、版本以及该jar所依赖到的其他jar(这也就是为什么引入一个jar却带出一大堆的jar来)
最简单的pom如下:
为jar和pom生成校验文件
可以通过一个ant任务来做:
- <!--Generate checksum file for jar and pom -->
- <target
把生成好的sh1文件和jar、pom按照前面介绍的结构布局拷贝到apache的代码库中,当然你也可以直接拷到本地代码库中。
- xml version="1.0" encoding="UTF-8"?>
- <project>
- <modelVersion>4.0.0<!--</span-->modelVersion>
- <groupId>net.jeffrey<!--</span-->groupId>
- <artifactId>xxx<!--</span-->artifactId>
- <version>1.0<!--</span-->version>
- <dependencies>
- <!--</span-->dependencies>
- <!--</span-->project>