做环保主义者,用Maven2管理Java类库
看着log4j-2.13.jar被每个项目每个版本里一次又一次无限下载,你就会觉得用Maven2 管理Library实在很环保。
而且,Java的类库也急需摆脱这种无身份无地位一个jar包随处摆放的境况。Maven给Jar以名份是一个好方向。
其实Ruby和php都已有了这样的管理工具和官方网站,所有的Ruby包在机器上都像rpm那样是installed的。Maven既然代表了Java,但愿也能好好发展。
完全使用Maven来做全部事情有点超前,因此我也只是是用它的library管理功能,真正用的深入的是pesome郁也风。
1. 查找Jar包在官网的路径
http://www.mavenregistry.com/ ,太实用了。
2. 用Ant 调Maven管理 JAR
SpringSide使用maven2的ant task,不需要用户装maven,直接用ant脚本来下载依赖包并copy到$springside_home/lib。脚本如下:
<classpath>
<pathelement location="lib/maven-artifact-ant-2.0.2-dep.jar"/>
< SPAN>classpath>
< SPAN>typedef>
<artifact:dependencies pathId="maven.classpath" filesetId="maven.fileset">
<artifact:pom file="pom.xml"/>
< SPAN>artifact:dependencies>
<copy todir="lib/">
<fileset refid="maven.fileset"/>
<mapper type="flatten"/>
< SPAN>copy>
第1句从maven-artifact-ant-2.0.2-dep.jar读antlib.xml,读出一堆maven的task。
第2句分析pom.xml里的jar,如果没有就上http://repo1.maven.org/maven2 把jar下载到${user.home}/.m2/目录。并把所有jar定义成ant的fileset对象--maven.fileset。
第3句把maven.fileset定义的,放在${user.home}/.m2/里的jar 拷贝到项目lib目录。
不过,相对来讲Maven2还很不成熟,比如很多项目的pom是乱写的,比如maven官网的速度实在太差,还经常抽筋死掉,比如有一些想要的新版官网上没有。
3. 自建私服
自己建个私服是不错的主意。其实也简单,随便拿台http服务器,把${user.home}/.m2/ 目录传上去就行了
在pom文件中,把私服的http url写在官网的前面。
<repository>
<id>springside< SPAN>id>
<url>http://www.springside.org.cn/maven2< SPAN>url>
< SPAN>repository>
<repository>
<id>maven< SPAN>id>
&
补充:软件开发 , Java ,
- 更多JAVA疑问解答:
- java怎么在线读取ftp服务器上的文件内容
- 关于程序员的职业规划
- HTML和JSP矛盾吗?
- java小程序如何打包?
- java怎么split路径文件名?
- 关于Hibernate实体自身多对一的抓取问题
- 关于apache2+tomcat群集出现的问题
- SSH 导入导出excel 谁有这块的资料吗?
- springmvc 加载一个jsp页面执行多个方法 报404
- 关于用jquery 导入 excel
- java对时间进行循环放到List中
- 一个图片的输入输出程序,第一次调用某方法会中断,第二次调用则正常
- 请上过传智播客的人说一下传智播客怎么样呀!是不是像它说的那样好呀!
- spring的schema怎么配置
- 【菜鸟求助】SSH中怎么从JSP页面往后台传值呢