secce 发表于 2017-1-21 08:07:01

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

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]
查看完整版本: ant 配置,停止 tomcat, 打包war 启动tomcat