|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
net程序员的大部门代码都靠控件拖拽完成的,虽然java也有,但是无论从美观和速度上都没发和.net比。java程序员都是代码完成的,所以java程序员常戏称.net程序员是操作员,呵呵。
maven很壮大,可是总有些事变干起来不是轻车熟路,没有利用ant时那种想怎样干就怎样干的流利感。特别当要打包一个特别(绝对maven的尺度架构并且)时,常有手足无措的感到。固然这个应当和本人对maven的懂得不敷有关,究竟,“初学maven”嘛。
可是maven在依附办理方面其实是太壮大了,太喜好,退回本来的ant体例完整不成能,我想用过maven的人,通常为不会有回到本来在cvs,subversion中checkin/checkoutn个jar包的时期,仅此一项来由就充足持续保持利用maven了。
但是ant的天真又难于忘记,特别是从ant的build.xml一起走来的人,老是回不知不觉间想到ant的优美。鱼与熊掌,我都想要。比来想打包一个java使用,很复杂但即不是尺度的j2eeappication也不是webapplication,用maven完整不晓得该怎样打包,package出来的完整不是我想要的,在网上到处googlemaven材料的时分,总有效回ant拉倒的感动。
先交卸一下背景吧,我要打包的程序,是这个模样:
demo1
|____lib
|_____demo1.jar
|_____*****.jar
|_____*****.jar
|____config
|_____*****.properties
|_____*****.xml
|____log
|_____*****.log
|____run.bat
|____run.sh
这个使用的打包形式很复杂,一个bat大概sh剧本用来实行,lib目次下寄存一切的jar包,包含本人的源代码编译打包的jar和第三方包。config下是设置文件,这些文件必要在安装时大概运转前修正,好比监听的端口啊,数据库信息之类的。log目次寄存日记文件。最初打包的产品是一个zip包(大概tar,tar.gz)。
碰到的成绩,就是maven尺度的打包体例中基本不思索相似的情形,甚么jar,ear,war完整不合用。并且maven有些理念也惊奇,好比maven尺度的config目次是src/main/config,可是这个目次内里的设置文件默许会打包到jar包中,晕,都在jar内里了还让人怎样改啊?
本着只管只用maven不必ant的设法,我在maven的材料中看了很久,没有找到办理的办法。晕,岂非人人都只打包尺度的ear,jar,war,只要我如许无聊的人才网会有这类打包的需求?
几经寻找和探究,最初发明,mavenanttasks仿佛是一个不错的选择。带着mavenanttasks的官方文档和google上搜到的几篇文章,入手下手实验,乐成完成功效。如今将历程和办法share给人人。
起首创建java项目anttaskdemo1,依照maven的保举,文件布局以下:
anttaskdemo1
|____src/main/java
|____src/main/config
|____src/main/bin
|____src/main/resources
|____src/test/java
|____src/test/resources
|____target
|____build.properties
|____build.xml
|____pom.xml
个中src/main/java下放java代码;src/main/resources下放一个*.properties文件,这个资本文件是打包到jar中,内容打包以后不必要改动的。src/main/config下放一个尺度的log4j.xml,这个是有在安装运转前一时修正的必要的。src/main/bin下安排可实行文件。
<p>
专门做了这个例子;而java的这个例子好像就是为了教学而写的,很多教学目的的例子是不考虑优化、性能的。 |
|