用ant启动和关闭tomcat

[url]http://blog.csdn.net/youjianbo_han_87/article/details/4456209[/url]
[color=red][b](一)linux 环境 (端口号应根据自己的tomcat配置 ,进行设置)[/b][/color]
[b]A:启动TOMCAT [/b]

<target name="linux.start.tomcat" description="starts tomcat in the current console window">
<if>
<not>
<socket server="localhost" port="23080" />
</not>
<then>
<echo message="start tomcat..." />
<exec executable="${basedir}/bin/startup.sh">
<env key="CATALINA_HOME" value="${basedir}" />
</exec>
<waitfor maxwait="5" maxwaitunit="minute" checkevery="5" checkeveryunit="second">
<and>
<socket server="localhost" port="23080" />
</and>
</waitfor>
</then>
</if>
</target>


[b]B:关闭tomcat [/b]

<target name="linux.stop.tomcat" description="starts tomcat in the current console window">
<if>
<socket server="localhost" port="23080" />
<then>
<echo message="stop tomcat..." />
<exec executable="${basedir}/bin/shutdown.sh" failonerror="false">
<env key="CATALINA_HOME" value="${basedir}" />
</exec>
<echo message="${basedir}/bin/shutdown.sh" />
<waitfor maxwait="5" maxwaitunit="minute" checkevery="5" checkeveryunit="second">
<not>
<socket server="localhost" port="23080" />
</not>
</waitfor>
</then>
</if>
</target>


[color=red][b](二)WINDOWS环境[/b][/color]

[b]A:启动TOMCAT [/b]

<target name="windows.start.tomcat" description="starts tomcat in the current console window">
<if>
<not>
<socket server="localhost" port="23080" />
</not>
<then>
<echo message="start tomcat..." />
<java classname="org.apache.catalina.startup.Bootstrap" spawn="yes" fork="yes">
<jvmarg line='-Dcatalina.home="${tomcat.home}"' />
<jvmarg value="-Dgoodhope.adapter.classname=com.goodhope.gameservice.adapters.DummyAdapter" />
<arg value="start" />
<classpath>
<pathelement path="${java.home}/../lib/tools.jar" />
<fileset dir="${tomcat.home}">
<include name="bin/bootstrap.jar" />
</fileset>
</classpath>
</java>
<waitfor maxwait="5" maxwaitunit="minute" checkevery="5" checkeveryunit="second">
<and>
<socket server="localhost" port="23080" />
</and>
</waitfor>
</then>
</if>
</target>


[b]B:关闭TOMCAT [/b]

<target name="windows.stop.tomcat" description="stops tomcat in the current console window">
<if>
<and>
<socket server="localhost" port="23080" />
</and>
<then>
<echo message="stop tomcat..." />
<java classname="org.apache.catalina.startup.Bootstrap" fork="yes">
<jvmarg value="-Dcatalina.home=${tomcat.home}" />
<jvmarg value="-Djava.endorsed.dirs=${tomcat.home}/common/endorsed" />
<jvmarg value="-Dcatalina.base=${tomcat.home}" />
<jvmarg value="-Djava.io.tmpdir=${tomcat.home}/temp" />
<arg value="stop" />
<classpath>
<pathelement path="${java.home}/../lib/tools.jar" />
<fileset dir="${tomcat.home}">
<include name="bin/bootstrap.jar" />
<include name="server/lib/*.jar" />
<include name="common/lib/*.jar" />
</fileset>
</classpath>
</java>
<waitfor maxwait="5" maxwaitunit="minute" checkevery="5" checkeveryunit="second">
<not>
<socket server="localhost" port="23080" />
</not>
</waitfor>
</then>
</if>
</target>


(三)再此之前,应在build.xml前面定义一个任务,注意应将相应JAR包放到对应目录下

<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="${basedir}/lib/ant-contrib.jar" />
</classpath>
</taskdef>



附加我自己的配置:
<!-- Tomcat -->
<!-- Windows -->
<target name="win_publish_tomcat" depends="war_rhcpm" description="准备发布war包到tomcat[Windows]">
<echo message="===============准备发布war包到tomcat===============" />
<echo message="整理${win.tomcat.home}" />
<delete file="${win.tomcat.home}/webapps/rhcpm.war">
</delete>
<delete dir="${win.tomcat.home}/webapps/rhcpm">
</delete>
<delete dir="${win.tomcat.home}/work/Catalina/localhost/rhcpm">
</delete>
<echo message="发布war文件${win.tomcat.home}" />
<copy file="${dist.dir}/rhcpm-${rhcpm.version}.${svn.head.rev}.war" tofile="${win.tomcat.home}/webapps/rhcpm.war" />
</target>
<target name="win_start_tomcat" depends="win_publish_tomcat" description="启动tomcat服务器[Windows]">
<echo message="===============启动tomcat===============" />
<exec executable="cmd" dir="${win.tomcat.home}/bin" failonerror="false" output="${win.log.file}" append="true">
<!-- <arg value="/c" /> -->
<env key="CATALINA_HOME" path="${win.tomcat.home}" />
<arg value="/c startup.bat" />
</exec>
</target>
<target name="win_stop_tomcat" description="停止tomcat服务器[Windows]">
<echo message="===============停止tomcat===============" />
<exec executable="cmd" dir="${win.tomcat.home}/bin" failonerror="false" output="${win.log.file}" append="true">
<!-- <arg value="/c" /> -->
<env key="CATALINA_HOME" path="${win.tomcat.home}" />
<arg value="/c shutdown.bat" />
</exec>
</target>
<!-- linux -->
<target name="linux_publish_tomcat" depends="war_rhcpm" description="准备发布war包到tomcat[Linux]">
<echo message="===============准备发布war包到tomcat===============" />
<echo message="整理${linux.tomcat.home}" />
<delete file="${linux.tomcat.home}/webapps/rhcpm.war">
</delete>
<delete dir="${linux.tomcat.home}/webapps/rhcpm">
</delete>
<delete dir="${linux.tomcat.home}/work/Catalina/localhost/rhcpm">
</delete>
<echo message="发布war文件${linux.tomcat.home}" />
<copy file="${dist.dir}/rhcpm-${rhcpm.version}.${svn.head.rev}.war" tofile="${linux.tomcat.home}/webapps/rhcpm.war" />
</target>
<target name="linux_start_tomcat" depends="linux_publish_tomcat" description="启动tomcat服务器[Linux]">
<echo message="===============启动tomcat===============" />
<exec executable="${linux.tomcat.home}/bin/startup.sh" failonerror="false" output="${linux.log.file}" append="true">
<!-- <arg value="/c" /> -->
<env key="CATALINA_HOME" path="${linux.tomcat.home}" />
<arg value="/c startup.sh" />
</exec>
</target>
<target name="linux_stop_tomcat" description="停止tomcat服务器[Linux]">
<echo message="===============停止tomcat===============" />
<exec executable="${linux.tomcat.home}/bin/shutdown.sh" failonerror="false" output="${linux.log.file}" append="true">
<!-- <arg value="/c" /> -->
<env key="CATALINA_HOME" path="${linux.tomcat.home}" />
</exec>
</target>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值