ant 配置,停止 tomcat, 打包war 启动tomcat

原创   ant 配置 停止 tomcat, 打包程序成 war 文件夹,启动 tomcat 一体 收藏

转载请保留: http://blog.csdn.net/laorer  , 谢谢!

没什么好说的,就是一个文件,把几个功能集成在一起, 其他的好说,就是停止和启动  tomcat 时遇到了问题,不过已经解决, 代码里有些多余的,你可以自己去掉他

  1. < project   default = "deploy"   name = "test"   >   
  2.     < property   file = "./build.properties" />   
  3.   
  4.     < target   name = "init" >   
  5.   
  6.         < property   name = "debug"   value = "off"   />   
  7.         < property   name = "optimize"   value = "on"   />   
  8.         < property   name = "deprecation"   value = "on"   />   
  9.   
  10.         <!--    classpath -->   
  11.         < path   id = "classpath" >   
  12.   
  13.             < fileset   dir = "${jdk.lib.dir}" >   
  14.                 < include   name = "**/*.jar" />   
  15.             </ fileset >   
  16.             < fileset   dir = "${tomcat.lib.dir}" >   
  17.                 < include   name = "**/*.jar" />   
  18.             </ fileset >   
  19.             < fileset   dir = "${lib.dir}" >   
  20.                 < include   name = "**/*.jar" />   
  21.             </ fileset >   
  22.             <!--<pathelement location="lib/"/>-->   
  23.         </ path >   
  24.   
  25.     </ target >   
  26.   
  27.   
  28.   
  29.     <!-- =================================================================== -->   
  30.     <!-- Help on usage -->   
  31.     <!-- =================================================================== -->   
  32.     < target   name = "usage"   depends = "init" >   
  33.         < echo   message = "${release.name} Build file"   />   
  34.         < echo   message = "-------------------------------------------------------------"   />   
  35.         < echo   message = ""   />   
  36.         < echo   message = " available targets are:"   />   
  37.         < echo   message = ""   />   
  38.         < echo   message = " jar --> generates the ${release.name}.jar file"   />   
  39.         < echo   message = " build --> compiles the source code"   />   
  40.         < echo   message = " javadoc --> generates the API documentation"   />   
  41.         < echo   message = " clean --> cleans up the directory"   />   
  42.         < echo   message = ""   />   
  43.         < echo   message = " See the comments inside the build.xml file for more details."   />   
  44.         < echo   message = "-------------------------------------------------------------"   />   
  45.         < echo   message = ""   />   
  46.         < echo   message = ""   />   
  47.     </ target >   
  48.   
  49.   
  50. <!-- - - - - - - - - - - - - - - - - -   
  51.           target: delete                        
  52.          - - - - - - - - - - - - - - - - - -->   
  53.     < target   name = "delete" >   
  54.             < delete   dir = "${deploy.dir}"     />   
  55.         < delete   dir = "${build.dir}"   quiet = "true" />   
  56.         < delete   dir = "../sf"   quiet = "true" />   
  57.                   
  58.     </ target >   
  59.   
  60.     <!-- =================================================================== -->   
  61.     <!-- 准备源文件-->   
  62.     <!-- =================================================================== -->   
  63.     < target   name = "prepare-src"   depends = "init" >   
  64.         < delete   dir = "${build.dir}"   quiet = "true" />   
  65.   
  66.         <!-- create directories -->   
  67.         < mkdir   dir = "${build.dir}"   />   
  68.         < mkdir   dir = "${build.src.dir}" />   
  69.         < mkdir   dir = "${classes.dir}"   />   
  70.         < mkdir   dir = "${package.dir}"   />   
  71.         < mkdir   dir = "${package.dir}/WEB-INF"   />   
  72.         < mkdir   dir = "${package.lib.dir}"   />   
  73.         <!-- mkdir dir="${deploy.dir}" / -->   
  74.         < mkdir   dir = "${package.web.classes.dir}" />   
  75.   
  76.         <!-- copy src files -->   
  77.         < copy   todir = "${build.src.dir}" >   
  78.             < fileset   dir = "${src.dir}"   />   
  79.         </ copy >   
  80.   
  81.   
  82.     </ target >   
  83.   
  84.   
  85.   
  86.     <!-- =================================================================== -->   
  87.     <!-- 编译源文件-->   
  88.     <!-- =================================================================== -->   
  89.     < target   name = "build"   depends = "prepare-src, copyWeb" >   
  90.         < javac   srcdir = "${build.src.dir}"   destdir = "${classes.dir}"   debug = "${debug}"   optimize = "${optimize}" >   
  91.             < classpath   refid = "classpath"   />   
  92.         </ javac >   
  93.         < copy   todir = "${package.web.classes.dir}" >   
  94.             < fileset   dir = "${build.src.dir}"   >   
  95.                 <!-- include name="**/*.xml"/ -->   
  96.                 < exclude   name = "**/*.java" />   
  97.             </ fileset >   
  98.         </ copy >   
  99.     </ target >   
  100.   
  101.     <!-- - - - - - - - - - - - - - - - - -   
  102.           target: copy web                        
  103.          - - - - - - - - - - - - - - - - - -->   
  104.     < target   name = "copyWeb" >   
  105.         < copy   todir = "${package.dir}" >   
  106.             < fileset   dir = "${web.dir}"   >   
  107.                 < include   name = "**/*.*"   />   
  108.             </ fileset >   
  109.         </ copy >   
  110.     </ target >   
  111.   
  112.     < target   name = "jar"   depends = "build" >   
  113.         < jar   destfile = "${package.lib.dir}/${release.name}.jar"   basedir = "${classes.dir}" >   
  114.   
  115.         </ jar >   
  116.     </ target >   
  117.   
  118.   
  119.   
  120.     <!-- =================================================================== -->   
  121.     <!-- 打war包-->   
  122.     <!-- =================================================================== -->   
  123.   
  124.     < target   name = "war"   depends = " jar,copyWeb" >   
  125.         < war   warfile = "${build.dir}/${release.name}.war"   webxml = "${package.webinf.dir}/web.xml" >   
  126.             < lib   dir = "${package.lib.dir}" />   
  127.             < classes   dir  =  "${package.web.classes.dir}" />   
  128.             < fileset   dir = "${package.dir}" >   
  129.                 < exclude   name = "**/*.jar" />   
  130.             </ fileset >   
  131.         </ war >   
  132. <!-- war 打包时,指明了 lib 的话, 需要去掉  jar 文件, 否则会 把 jar 打两份进 war 文件-->   
  133.     </ target >   
  134.   
  135.   
  136. <!--   
  137.     < target   name = "stopTomcat" >   
  138.         < exec   executable = "${tomcat.bin.dir}/shutdown.bat"   os = "Windows 2000"   />   
  139.     </ target >   
  140.   
  141.     < target   name = "startTomcat"   depends  = "stopTomcat"    >   
  142.         < exec   executable = "${tomcat.bin.dir}/startup.bat"   os = "Windows 2000"   />   
  143.     </ target >   
  144. -->   
  145.     < target   name = "start-tomcat" >   
  146.         < delete   dir = "${deploy.dir}"   />   
  147.         < exec   executable = "cmd"   dir = "${tomcat.bin.dir}" >   
  148.             < arg   value = "/c" />   
  149.             < arg   value = "startup.bat" />   
  150.         </ exec >   
  151.     </ target >   
  152.       
  153.     < target   name = "stop-tomcat" >   
  154.         < exec   executable = "cmd "   dir = "${tomcat.bin.dir}"   spawn = "true" >   
  155.             < arg   value = "/c"   />   
  156.             < arg   value = "shutdown.bat"   />   
  157.         </ exec >   
  158.     </ target >   
  159.   
  160.   
  161.     <!-- =================================================================== -->   
  162.     <!-- 发布到本的resin和tomcat-->   
  163.     <!-- =================================================================== -->   
  164.   
  165.     < target   name = "publish"   depends = "war,clean" >   
  166.   
  167.         < delete   dir = "${tomcat.apps.dir}/${release.name}" />   
  168.         < copy   todir = "${tomcat.apps.dir}" >   
  169.             < fileset   file = "${build.dir}/${release.name}.war"   />   
  170.         </ copy >   
  171.   
  172.     </ target >   
  173.       
  174.     <!--  =================================   
  175.           target: deploy                 
  176.          ================================= -->   
  177.     < target   name = "deploy"   depends = "stop-tomcat, publish,start-tomcat"   description = "description" >   
  178.           
  179.     </ target >   
  180.   
  181.     <!--   
  182. < target   name = "SyncMain" >    
  183.           < java   classname = "com.ce.synchronization.main.SyncMain"   failonerror = "true"   fork = "yes" >    
  184.               < classpath   refid = "classpath" />    
  185.           </ java >    
  186. </ target >    
  187. -->   
  188.     <!-- =================================================================== -->   
  189.     <!-- 产生javadoc api 文档-->   
  190.     <!-- =================================================================== -->   
  191.     < target   name = "javadoc"   depends = "build" >   
  192.         < mkdir   dir = "${build.javadocs}"   />   
  193.         < javadoc   packagenames = "${packages}"   sourcepath = "${build.src}"   destdir = "${build.javadocs}"   author = "true"   version = "true"   use = "true"   splitindex = "true"   windowtitle = "${Name} API"   doctitle = "${Name}" >   
  194.             < classpath   refid = "classpath"   />   
  195.         </ javadoc >   
  196.     </ target >   
  197.     <!-- =================================================================== -->   
  198.     <!-- 清除临时文件-->   
  199.     <!-- =================================================================== -->   
  200.     < target   name = "clean"   depends = "init" >   
  201.         < delete   dir = "${build.src}"   quiet = "true" />   
  202.   
  203.     </ target >   
  204.   
  205.   
  206. </ project >   

...下面是  build.properties 文件\

  1. #Mon May  18   23 : 46 : 41  CST  2009   
  2. package .web.classes.dir=${ package .dir}/WEB-INF/classes  
  3. jdk.lib.dir=${java.home}/lib  
  4. web.dir=${base.dir}/WebContent  
  5. src.dir=${base.dir}/src  
  6. jdk.lib.ext.dir=${java.lib.dir}/ext  
  7. deploy.dir=${tomcat.apps.dir}/${release.name}  
  8. classes.dir=${build.dir}/classes  
  9. lib.dir=${web.dir}/WEB-INF/lib  
  10. jdk.home=E\:/java/jdk5  
  11. package .lib.dir=${ package .dir}/WEB-INF/lib  
  12. tomcat.lib.dir=${tomcat.home}/common/lib  
  13. release.name=struts2Tile  
  14. build.src.dir=${build.dir}/src  
  15. tomcat.bin.dir=${tomcat.home}/bin  
  16. tomcat.apps.dir=${tomcat.home}/webapps  
  17. base.dir=.  
  18. tomcat.home=E\:/java/Tomcat 5.5   
  19. build.dir=${base.dir}/build  
  20. package .dir=${build.dir}/${release.name}  
  21. package .webinf.dir=${ package .dir}/WEB-INF 

猜你喜欢

转载自feiyan35488.iteye.com/blog/954369