设为首页 收藏本站
查看: 286|回复: 0

[经验分享] ant 配置,停止 tomcat, 打包war 启动tomcat

[复制链接]

尚未签到

发表于 2017-1-21 08:07:01 | 显示全部楼层 |阅读模式
http://blog.csdn.net/images/authorship.gif ant 配置 停止 tomcat, 打包程序成 war 文件夹,启动 tomcat 一体收藏


  转载请保留: http://blog.csdn.net/laorer , 谢谢!
  没什么好说的,就是一个文件,把几个功能集成在一起, 其他的好说,就是停止和启动  tomcat 时遇到了问题,不过已经解决, 代码里有些多余的,你可以自己去掉他
view plaincopy to clipboardprint?


  • <project default="deploy" name="test" >  
  •     <property file="./build.properties"/>  
  •   
  •     <target name="init">  
  •   
  •         <property name="debug" value="off" />  
  •         <property name="optimize" value="on" />  
  •         <property name="deprecation" value="on" />  
  •   
  •         <!--    classpath -->  
  •         <path id="classpath">  
  •   
  •             <fileset dir="${jdk.lib.dir}">  
  •                 <include name="**/*.jar"/>  
  •             </fileset>  
  •             <fileset dir="${tomcat.lib.dir}">  
  •                 <include name="**/*.jar"/>  
  •             </fileset>  
  •             <fileset dir="${lib.dir}">  
  •                 <include name="**/*.jar"/>  
  •             </fileset>  
  •             <!--<pathelement location="lib/"/>-->  
  •         </path>  
  •   
  •     </target>  
  •   
  •   
  •   
  •     <!-- =================================================================== -->  
  •     <!-- Help on usage -->  
  •     <!-- =================================================================== -->  
  •     <target name="usage" depends="init">  
  •         <echo message="${release.name} Build file" />  
  •         <echo message="-------------------------------------------------------------" />  
  •         <echo message="" />  
  •         <echo message=" available targets are:" />  
  •         <echo message="" />  
  •         <echo message=" jar --> generates the ${release.name}.jar file" />  
  •         <echo message=" build --> compiles the source code" />  
  •         <echo message=" javadoc --> generates the API documentation" />  
  •         <echo message=" clean --> cleans up the directory" />  
  •         <echo message="" />  
  •         <echo message=" See the comments inside the build.xml file for more details." />  
  •         <echo message="-------------------------------------------------------------" />  
  •         <echo message="" />  
  •         <echo message="" />  
  •     </target>  
  •   
  •   
  • <!-- - - - - - - - - - - - - - - - - -   
  •           target: delete                        
  •          - - - - - - - - - - - - - - - - - -->  
  •     <target name="delete">  
  •             <delete dir="${deploy.dir}"   />  
  •         <delete dir="${build.dir}" quiet="true"/>  
  •         <delete dir="../sf" quiet="true"/>  
  •                   
  •     </target>  
  •   
  •     <!-- =================================================================== -->  
  •     <!-- 准备源文件-->  
  •     <!-- =================================================================== -->  
  •     <target name="prepare-src" depends="init">  
  •         <delete dir="${build.dir}" quiet="true"/>  
  •   
  •         <!-- create directories -->  
  •         <mkdir dir="${build.dir}" />  
  •         <mkdir dir="${build.src.dir}"/>  
  •         <mkdir dir="${classes.dir}" />  
  •         <mkdir dir="${package.dir}" />  
  •         <mkdir dir="${package.dir}/WEB-INF" />  
  •         <mkdir dir="${package.lib.dir}" />  
  •         <!-- mkdir dir="${deploy.dir}" / -->  
  •         <mkdir dir="${package.web.classes.dir}"/>  
  •   
  •         <!-- copy src files -->  
  •         <copy todir="${build.src.dir}">  
  •             <fileset dir="${src.dir}" />  
  •         </copy>  
  •   
  •   
  •     </target>  
  •   
  •   
  •   
  •     <!-- =================================================================== -->  
  •     <!-- 编译源文件-->  
  •     <!-- =================================================================== -->  
  •     <target name="build" depends="prepare-src, copyWeb">  
  •         <javac srcdir="${build.src.dir}" destdir="${classes.dir}" debug="${debug}" optimize="${optimize}">  
  •             <classpath refid="classpath" />  
  •         </javac>  
  •         <copy todir="${package.web.classes.dir}">  
  •             <fileset dir="${build.src.dir}" >  
  •                 <!-- include name="**/*.xml"/ -->  
  •                 <exclude name="**/*.java"/>  
  •             </fileset>  
  •         </copy>  
  •     </target>  
  •   
  •     <!-- - - - - - - - - - - - - - - - - -   
  •           target: copy web                        
  •          - - - - - - - - - - - - - - - - - -->  
  •     <target name="copyWeb">  
  •         <copy todir="${package.dir}">  
  •             <fileset dir="${web.dir}" >  
  •                 <include name="**/*.*" />  
  •             </fileset>  
  •         </copy>  
  •     </target>  
  •   
  •     <target name="jar" depends="build">  
  •         <jar destfile="${package.lib.dir}/${release.name}.jar" basedir="${classes.dir}">  
  •   
  •         </jar>  
  •     </target>  
  •   
  •   
  •   
  •     <!-- =================================================================== -->  
  •     <!-- 打war包-->  
  •     <!-- =================================================================== -->  
  •   
  •     <target name="war" depends=" jar,copyWeb">  
  •         <war warfile="${build.dir}/${release.name}.war" webxml="${package.webinf.dir}/web.xml">  
  •             <lib dir="${package.lib.dir}"/>  
  •             <classes dir = "${package.web.classes.dir}"/>  
  •             <fileset dir="${package.dir}">  
  •                 <exclude name="**/*.jar"/>  
  •             </fileset>  
  •         </war>  
  • <!-- war 打包时,指明了 lib 的话, 需要去掉  jar 文件, 否则会 把 jar 打两份进 war 文件-->  
  •     </target>  
  •   
  •   
  • <!--   
  •     <target name="stopTomcat">  
  •         <exec executable="${tomcat.bin.dir}/shutdown.bat" os="Windows 2000" />  
  •     </target>  
  •   
  •     <target name="startTomcat" depends ="stopTomcat"  >  
  •         <exec executable="${tomcat.bin.dir}/startup.bat" os="Windows 2000" />  
  •     </target>  
  • -->  
  •     <target name="start-tomcat">  
  •         <delete dir="${deploy.dir}" />  
  •         <exec executable="cmd" dir="${tomcat.bin.dir}">  
  •             <arg value="/c"/>  
  •             <arg value="startup.bat"/>  
  •         </exec>  
  •     </target>  
  •       
  •     <target name="stop-tomcat">  
  •         <exec executable="cmd " dir="${tomcat.bin.dir}" spawn="true">  
  •             <arg value="/c" />  
  •             <arg value="shutdown.bat" />  
  •         </exec>  
  •     </target>  
  •   
  •   
  •     <!-- =================================================================== -->  
  •     <!-- 发布到本的resin和tomcat-->  
  •     <!-- =================================================================== -->  
  •   
  •     <target name="publish" depends="war,clean">  
  •   
  •         <delete dir="${tomcat.apps.dir}/${release.name}"/>  
  •         <copy todir="${tomcat.apps.dir}">  
  •             <fileset file="${build.dir}/${release.name}.war" />  
  •         </copy>  
  •   
  •     </target>  
  •       
  •     <!-- =================================   
  •           target: deploy                
  •          ================================= -->  
  •     <target name="deploy" depends="stop-tomcat, publish,start-tomcat" description="description">  
  •           
  •     </target>  
  •   
  •     <!--   
  • <target name="SyncMain">   
  •           <java classname="com.ce.synchronization.main.SyncMain" failonerror="true" fork="yes">   
  •               <classpath refid="classpath"/>   
  •           </java>   
  • </target>   
  • -->  
  •     <!-- =================================================================== -->  
  •     <!-- 产生javadoc api 文档-->  
  •     <!-- =================================================================== -->  
  •     <target name="javadoc" depends="build">  
  •         <mkdir dir="${build.javadocs}" />  
  •         <javadoc packagenames="${packages}" sourcepath="${build.src}" destdir="${build.javadocs}" author="true" version="true" use="true" splitindex="true" windowtitle="${Name} API" doctitle="${Name}">  
  •             <classpath refid="classpath" />  
  •         </javadoc>  
  •     </target>  
  •     <!-- =================================================================== -->  
  •     <!-- 清除临时文件-->  
  •     <!-- =================================================================== -->  
  •     <target name="clean" depends="init">  
  •         <delete dir="${build.src}" quiet="true"/>  
  •   
  •     </target>  
  •   
  •   
  • </project>  

  <projectdefault="deploy" name="test" ><property file="./build.properties"/><target name="init"><property name="debug" value="off" /><property name="optimize" value="on" /><property name="deprecation" value="on" /><!--    classpath --><path id="classpath"><fileset dir="${jdk.lib.dir}"><include name="**/*.jar"/></fileset><fileset dir="${tomcat.lib.dir}"><include name="**/*.jar"/></fileset><fileset dir="${lib.dir}"><include name="**/*.jar"/></fileset><!--<pathelement location="lib/"/>--></path></target><!-- =================================================================== --><!-- Help on usage --><!-- =================================================================== --><target name="usage" depends="init"><echo message="${release.name} Build file" /><echo message="-------------------------------------------------------------" /><echo message="" /><echo message=" available targets are:" /><echo message="" /><echo message=" jar --> generates the ${release.name}.jar file" /><echo message=" build --> compiles the source code" /><echo message=" javadoc --> generates the API documentation" /><echo message=" clean --> cleans up the directory" /><echo message="" /><echo message=" See the comments inside the build.xml file for moredetails." /><echo message="-------------------------------------------------------------" /><echo message="" /><echo message="" /></target><!-- - - - - - - - - - - - - - - - - - target: delete                      - - - - - - - - - - - - - - - - - --><target name="delete"><delete dir="${deploy.dir}"   /><delete dir="${build.dir}" quiet="true"/><delete dir="../sf" quiet="true"/></target><!-- =================================================================== --><!-- 准备源文件--><!-- =================================================================== --><target name="prepare-src" depends="init"><delete dir="${build.dir}" quiet="true"/><!-- create directories --><mkdir dir="${build.dir}" /><mkdir dir="${build.src.dir}"/><mkdir dir="${classes.dir}" /><mkdir dir="${package.dir}" /><mkdir dir="${package.dir}/WEB-INF" /><mkdir dir="${package.lib.dir}" /><!-- mkdir dir="${deploy.dir}" / --><mkdir dir="${package.web.classes.dir}"/><!-- copy src files --><copy todir="${build.src.dir}"><fileset dir="${src.dir}" /></copy></target><!-- =================================================================== --><!-- 编译源文件--><!-- =================================================================== --><target name="build" depends="prepare-src, copyWeb"><javac srcdir="${build.src.dir}" destdir="${classes.dir}" debug="${debug}" optimize="${optimize}"><classpath refid="classpath" /></javac><copy todir="${package.web.classes.dir}"><fileset dir="${build.src.dir}" ><!-- include name="**/*.xml"/ --><exclude name="**/*.java"/></fileset></copy></target><!-- - - - - - - - - - - - - - - - - - target: copy web                      - - - - - - - - - - - - - - - - - --><target name="copyWeb"><copy todir="${package.dir}"><fileset dir="${web.dir}" ><include name="**/*.*" /></fileset></copy></target><target name="jar" depends="build"><jar destfile="${package.lib.dir}/${release.name}.jar" basedir="${classes.dir}"></jar></target><!-- =================================================================== --><!-- 打war包--><!-- =================================================================== --><target name="war" depends=" jar,copyWeb"><war warfile="${build.dir}/${release.name}.war" webxml="${package.webinf.dir}/web.xml"><lib dir="${package.lib.dir}"/><classes dir = "${package.web.classes.dir}"/><fileset dir="${package.dir}"><exclude name="**/*.jar"/></fileset></war><!-- war 打包时,指明了 lib 的话, 需要去掉  jar 文件, 否则会 把 jar 打两份进 war 文件--></target><!-- <target name="stopTomcat"><exec executable="${tomcat.bin.dir}/shutdown.bat" os="Windows 2000"/></target><target name="startTomcat" depends ="stopTomcat"  ><exec executable="${tomcat.bin.dir}/startup.bat" os="Windows 2000" /></target>--><target name="start-tomcat"><delete dir="${deploy.dir}" /><exec executable="cmd" dir="${tomcat.bin.dir}"><arg value="/c"/><arg value="startup.bat"/></exec></target><target name="stop-tomcat"><exec executable="cmd " dir="${tomcat.bin.dir}" spawn="true"><arg value="/c" /><arg value="shutdown.bat" /></exec></target><!-- =================================================================== --><!-- 发布到本的resin和tomcat--><!-- =================================================================== --><target name="publish" depends="war,clean"><delete dir="${tomcat.apps.dir}/${release.name}"/><copy todir="${tomcat.apps.dir}"><fileset file="${build.dir}/${release.name}.war" /></copy></target><!-- ================================= target: deploy              ================================= --><target name="deploy" depends="stop-tomcat, publish,start-tomcat"description="description"></target><!-- <target name="SyncMain"> <java classname="com.ce.synchronization.main.SyncMain" failonerror="true" fork="yes"> <classpath refid="classpath"/> </java> </target> --><!-- =================================================================== --><!-- 产生javadoc api 文档--><!-- =================================================================== --><target name="javadoc" depends="build"><mkdir dir="${build.javadocs}" /><javadoc packagenames="${packages}" sourcepath="${build.src}" destdir="${build.javadocs}" author="true" version="true" use="true" splitindex="true" windowtitle="${Name} API" doctitle="${Name}"><classpath refid="classpath" /></javadoc></target><!-- =================================================================== --><!-- 清除临时文件--><!-- =================================================================== --><target name="clean" depends="init"><delete dir="${build.src}" quiet="true"/></target></project>
  ...下面是  build.properties 文件\
view plaincopy to clipboardprint?


  • #Mon May 18 23:46:41 CST 2009  
  • package.web.classes.dir=${package.dir}/WEB-INF/classes  
  • jdk.lib.dir=${java.home}/lib  
  • web.dir=${base.dir}/WebContent  
  • src.dir=${base.dir}/src  
  • jdk.lib.ext.dir=${java.lib.dir}/ext  
  • deploy.dir=${tomcat.apps.dir}/${release.name}  
  • classes.dir=${build.dir}/classes  
  • lib.dir=${web.dir}/WEB-INF/lib  
  • jdk.home=E\:/java/jdk5  
  • package.lib.dir=${package.dir}/WEB-INF/lib  
  • tomcat.lib.dir=${tomcat.home}/common/lib  
  • release.name=struts2Tile  
  • build.src.dir=${build.dir}/src  
  • tomcat.bin.dir=${tomcat.home}/bin  
  • tomcat.apps.dir=${tomcat.home}/webapps  
  • base.dir=.  
  • tomcat.home=E\:/java/Tomcat 5.5  
  • build.dir=${base.dir}/build  
  • package.dir=${build.dir}/${release.name}  
  • package.webinf.dir=${package.dir}/WEB-INF 

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-331318-1-1.html 上篇帖子: tomcat 多种部署方式 下篇帖子: Tomcat源码系列7--Tomcat的JMX管理1
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表