Ant自动编译,打包,部署web应用到tomcat

转自:http://www.cnblogs.com/xliujingweix/archive/2012/04/29/2476309.html

 

?
<? xml  version = "1.0"  encoding = "UTF-8" ?>
< project  name = "IHDS"  basedir = "."  default = "startup" >
     < property  name = "tomcat.home"  value = "C:\software\apache-tomcat-6.0.18" />
     < property  name = "web.root"  value = "${tomcat.home}\webapps" ></ property >
     < property  name = "app.name"  value = "IHDS" />
     < property  name = "src.dir"  value = "src" />
     < property  name = "jdk.dir"  value = "C:\Program Files\Java\jdk1.6.0_18" />
     < property  name = "classes.dir"  value = "WebContent/WEB-INF/classes" />
     < property  name = "lib.dir"  value = "WebContent/WEB-INF/lib" />
 
     < target  name = "clean"  description = "clean application" >
         < echo  message = "----------delete application----------" />
         < delete  dir = "${web.root}/${app.name}" ></ delete >
         < delete  file = "${web.root}/${app.name}.war" ></ delete >
         < delete  file = "${app.name}.war" ></ delete >
         < delete  dir = "${classes.dir}" ></ delete >
     </ target >
 
     < target  name = "compile"  depends = "clean"  description = "compile java files" >
         < mkdir  dir = "${classes.dir}" />
         < javac  compiler = "javac1.6"  source = "1.6"  target = "1.6"  debug = "on"  fork = "yes"
             listfiles = "yes"  memoryinitialsize = "128m"  memorymaximumsize = "256m"
             srcdir = "${src.dir}"  destdir = "${classes.dir}"  includes = "**/*.java" >
             < classpath >
                 < fileset  dir = "${lib.dir}"  includes = "**/*.jar" ></ fileset >
                 < fileset  dir = "${lib.dir}"  includes = "**/*.zip" ></ fileset >
                 < fileset  dir = "${tomcat.home}/lib"  includes = "**/*.jar" ></ fileset >
             </ classpath >
         </ javac >
         < copy  todir = "${classes.dir}" >
             < fileset  dir = "${src.dir}"  excludes = "**/*.java" ></ fileset >
         </ copy >
     </ target >
 
     < target  name = "build"  depends = "compile"  description = "make war" >
         < war  destfile = "${app.name}.war"  basedir = "WebContent"  webxml = "WebContent/WEB-INF/web.xml" >
             < lib  dir = "${lib.dir}" ></ lib >
             < classes  dir = "${classes.dir}" ></ classes >
         </ war >
     </ target >
 
     < target  name = "deploy"  depends = "build"  description = "deploy project in tomcat" >
         < echo  message = "----------deploy project----------" />
         < copy  todir = "${web.root}" >
             < fileset  dir = "${basedir}" >
                 < include  name = "**/*.war" />
             </ fileset >
         </ copy >
     </ target >
 
     < target  name = "startup"  depends = "deploy"  description = "start up tomcat" >
         < echo  message = "----------start tomcat----------" />
         < exec  executable = "cmd"  dir = "${tomcat.home}/bin" >
             < arg  value = "/c" />
             < arg  value = "startup.bat" />
         </ exec >
     </ target >
 
     < target  name = "shutdown"  description = "shut down tomcat" >
         < echo  message = "----------close tomcat----------" ></ echo >
         < exec  executable = "cmd"  dir = "${tomcat.home}/bin" >
             < arg  value = "/c" />
             < arg  value = "shutdown.bat" />
         </ exec >
     </ target >
</ project >
 
 

Ant 风格路径表达式

分类: Java编程   471人阅读  评论(0)  收藏  举报

ANT通配符有三种:

 

通配符说明
?匹配任何单字符
*匹配0或者任意数量的字符
**匹配0或者更多的目录

 

 

例子:

URL路径说明
/app/*.x匹配(Matches)所有在app路径下的.x文件
/app/p?ttern匹配(Matches) /app/pattern 和 /app/pXttern,但是不包括/app/pttern
/**/example匹配(Matches) /app/example, /app/foo/example, 和 /example
/app/**/dir/file.*匹配(Matches) /app/dir/file.jsp, /app/foo/dir/file.html,/app/foo/bar/dir/file.pdf, 和 /app/dir/file.java
/**/*.jsp匹配(Matches)任何的.jsp 文件

 

属性:
最长匹配原则(has more characters)
说明,URL请求/app/dir/file.jsp,现在存在两个路径匹配模式/**/*.jsp和/app/dir/*.jsp,那么会根据模式/app/dir/*.jsp来匹配

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值