ant部署的几个例子

ant文件放到D:\java_workspace\ap\项目下运行


1.完成项目的编译工作。并打包jar文件。到打包到项目的jar目录中名为ap.jar目录

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="build" name="ap">
    <property environment="env"/> 
    <property name="debuglevel" value="source,lines,vars"/>
	<property name="project.name" value="ap"/>
	<property name="project.publish.jar.file" value="jar/ap.jar"/>
    <property name="target" value="1.7"/>
    <property name="source" value="1.7"/> 
    <path id="Web App Libraries.libraryclasspath">
    	<fileset dir="WebRoot/WEB-INF/lib">
    		<include name="**/*.jar"/>
    	</fileset>
    </path>
    <path id="EAR Libraries.libraryclasspath"/>
    <path id="ap.classpath">
        <pathelement location="WebRoot/WEB-INF/classes"/> 
        <path refid="Web App Libraries.libraryclasspath"/> 
    </path>
    <target name="init">
        <mkdir dir="WebRoot/WEB-INF/classes"/>
        <copy includeemptydirs="true" todir="WebRoot/WEB-INF/classes">
            <fileset dir="src">
                <exclude name="**/*.launch"/>
                <exclude name="**/*.java"/>
                <exclude name="**/.svn/**"/>
            </fileset>
        </copy>
    </target>
    <target name="clean">
        <delete dir="WebRoot/WEB-INF/classes"/>
    </target>
    <target depends="clean" name="cleanall"/>
    <target depends="build-subprojects,build-project" name="build"/>
    <target name="build-subprojects"/>
    <target depends="init" name="build-project">
        <echo message="${ant.project.name}: ${ant.file}"/>
    	<delete file="jar/ap.jar"/>
    	<javac debug="true" debuglevel="${debuglevel}" destdir="WebRoot/WEB-INF/classes" source="${source}" target="${target}" includeantruntime="on">
        	<compilerarg line="-encoding UTF-8" />
    		<!--<compilerarg value="-Xlint:unchecked"/>-->
            <src path="src"/>
            <exclude name="**/.svn/**"/>
            <classpath refid="ap.classpath"/>
        </javac> 
    	<jar jarfile="${project.publish.jar.file}" basedir="WebRoot/WEB-INF/classes"/>
    	<!--<delete dir="WebRoot/WEB-INF/classes"/>-->
    </target>
</project>



2.本地部署

将当前项目部署到webapps的ROOT目录下

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="build" name="ap">
    <property environment="env"/> 
    <property name="debuglevel" value="source,lines,vars"/>
	<property name="project.source.home.path" value="D:/java_workspace"/>
	<property name="project.publish.home.path" value="D:/java_dev/tomcat-6.0.35/webapps"/>	
	<property name="project.name" value="ROOT"/>
	<property name="project.publish.jar.file" value="${project.publish.home.path}/${project.name}/WEB-INF/lib/ap.jar"/>
    <property name="target" value="1.7"/>
    <property name="source" value="1.7"/> 
	
	 
	
    <path id="Web App Libraries.libraryclasspath">
    	<fileset dir="WebRoot/WEB-INF/lib">
    		<include name="**/*.jar"/>
    	</fileset>
    </path>
    <path id="EAR Libraries.libraryclasspath"/>
    <path id="ap.classpath">
        <pathelement location="WebRoot/WEB-INF/classes"/> 
        <path refid="Web App Libraries.libraryclasspath"/> 
    </path>
    <target name="init">
    	<delete dir="${project.publish.home.path}/${project.name}"/>
    	<mkdir dir="${project.publish.home.path}/${project.name}" />
    	<antcall target="checkout" />
        <mkdir dir="WebRoot/WEB-INF/classes"/>
        <copy includeemptydirs="false" todir="WebRoot/WEB-INF/classes">
            <fileset dir="src">
                <exclude name="**/*.launch"/>
                <exclude name="**/*.java"/>
                <exclude name="**/.svn/**"/>
            </fileset>
        </copy>
    </target>
    <target name="clean">
        <delete dir="WebRoot/WEB-INF/classes"/>
    </target>
    <target depends="clean" name="cleanall"/>
    <target depends="build-subprojects,build-project" name="build"/>
    <target name="build-subprojects"/>
    <target depends="init" name="build-project">
        <echo message="${ant.project.name}: ${ant.file}"/>
    	<delete dir="D:/java_dev/tomcat-6.0.35/webapps/ROOT"/>
    	<delete file="jar/ap.jar"/>
    	<copy includeemptydirs="true" todir="${project.publish.home.path}/${project.name}">
			<fileset dir="WebRoot">
				<include name="/" />
				<exclude name="**/.svn/**"/>
			</fileset>
    	</copy>
    	<javac debug="true" debuglevel="${debuglevel}" destdir="WebRoot/WEB-INF/classes" source="${source}" target="${target}" includeantruntime="on">
        	<compilerarg line="-encoding UTF-8" />
            <src path="src"/>
            <exclude name="**/.svn/**"/>
            <classpath refid="ap.classpath"/>
        </javac> 
    	<jar jarfile="${project.publish.jar.file}" basedir="WebRoot/WEB-INF/classes"/>
    	<delete dir="WebRoot/WEB-INF/classes"/>
    	<delete dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    </target>
</project>

3.从svn,打包jar并部署到本地服务器。export

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="build" name="ap">
    <property environment="env"/> 
    <property name="debuglevel" value="source,lines,vars"/>	
	<property name="ant.home" value="D:/java_dev/apache-ant-1.8.3"/>
	<property name="project.source.home.path" value="D:/java_dev/tomcat-6.0.35/webapps/ROOT/src"/>
	<property name="project.publish.home.path" value="D:/java_dev/tomcat-6.0.35/webapps"/>
	<property name="project.name" value="ROOT"/>
	<property name="project.publish.jar.file" value="${project.publish.home.path}/${project.name}/WEB-INF/lib/ap.jar"/>
    <property name="target" value="1.7"/>
    <property name="source" value="1.7"/>
	<path id="Web App Libraries.libraryclasspath">
    	<fileset dir="${project.publish.home.path}/${project.name}/WEB-INF/lib">
    		<include name="**/*.jar"/>
    	</fileset>
    </path>
    <path id="EAR Libraries.libraryclasspath"/>
    <path id="ap.classpath">
        <pathelement location="${project.publish.home.path}/${project.name}/WEB-INF/classes"/> 
        <path refid="Web App Libraries.libraryclasspath"/> 
    </path>
	<path id="svnant.classpath">
		 <fileset dir="${ant.home}/lib">
			<include name="**/*.jar"/>
		</fileset>
	</path>
	<taskdef  name="svn" classname="org.tigris.subversion.svnant.SvnTask" classpathref="svnant.classpath"/>
	<property name="svn.url" value="http://www.xxxx.com/svn/ap/trunk/source/ap"/> 
	<target name="checkout">
        <svn javahl="false" username="liuyuqiang" password="121044208">
			<checkout url="${svn.url}/WebRoot" revision="HEAD" destPath="${project.publish.home.path}/${project.name}" />
			<export srcUrl="${svn.url}/src" revision="HEAD" destPath="${project.publish.home.path}/${project.name}/src" /> 
        	<!--
        	<export srcUrl="${svn.url}/WebRoot" revision="HEAD" destPath="${project.publish.home.path}/${project.name}" />
        	<export srcUrl="${svn.url}/src" revision="HEAD" destPath="${project.publish.home.path}/${project.name}/src" />        	
			<export srcUrl="${svn.url}/src" revision="HEAD" destPath="${project.source.home.path}" />
			-->
        </svn>
	</target>
    <target name="init">
    	<echo message="${ant.project.name}: ${ant.file}"/>
		<delete dir="${project.source.home.path}"/>
    	<antcall target="checkout" />
        <mkdir dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>		 
        <copy includeemptydirs="false" todir="${project.publish.home.path}/${project.name}/WEB-INF/classes">
            <fileset dir="src">
                <exclude name="**/*.launch"/>
                <exclude name="**/*.java"/>
                <exclude name="**/.svn/**"/>
            </fileset>
        </copy>
    </target>
    <target name="clean">
        <delete dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    </target>
    <target depends="clean" name="cleanall"/>
    <target depends="build-subprojects,build-project" name="build"/>
    <target name="build-subprojects"/>
    <target depends="init" name="build-project"> 
		<mkdir dir="${project.publish.home.path}/${project.name}/WEB-INF/lib"/>
    	<javac debug="true" debuglevel="${debuglevel}" destdir="${project.publish.home.path}/${project.name}/WEB-INF/classes" source="${source}" target="${target}" includeantruntime="on">
        	<compilerarg line="-encoding UTF-8" />
            <src path="src"/>
            <exclude name="**/.svn/**"/>
            <classpath refid="ap.classpath"/>
        </javac>
    	<jar jarfile="${project.publish.jar.file}" basedir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    	<delete dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    	<delete dir="${project.source.home.path}"/>
    </target>
</project>


4.从svn进更新,打包jar包到lib


<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="build" name="ap">
    <property environment="env"/> 
    <property name="debuglevel" value="source,lines,vars"/>	
	<property name="ant.home" value="D:/java_dev/apache-ant-1.8.3"/>
	<property name="project.source.home.path" value="D:/java_dev/tomcat-6.0.35/webapps/ROOT/src"/>
	<property name="project.publish.home.path" value="D:/java_dev/tomcat-6.0.35/webapps"/>
	<property name="project.name" value="ROOT"/>
	<property name="project.publish.jar.file" value="${project.publish.home.path}/${project.name}/WEB-INF/lib/ap.jar"/>
    <property name="target" value="1.7"/>
    <property name="source" value="1.7"/>
	<path id="Web App Libraries.libraryclasspath">
    	<fileset dir="${project.publish.home.path}/${project.name}/WEB-INF/lib">
    		<include name="**/*.jar"/>
    	</fileset>
    </path>
    <path id="EAR Libraries.libraryclasspath"/>
    <path id="ap.classpath">
        <pathelement location="${project.publish.home.path}/${project.name}/WEB-INF/classes"/> 
        <path refid="Web App Libraries.libraryclasspath"/> 
    </path>
	<path id="svnant.classpath">
		 <fileset dir="${ant.home}/lib">
			<include name="**/*.jar"/>
		</fileset>
	</path>
	<taskdef  name="svn" classname="org.tigris.subversion.svnant.SvnTask" classpathref="svnant.classpath"/>
	<property name="svn.url" value="http://www.xxxx.com/svn/ap/trunk/source/ap"/> 
	<target name="checkout">
        <svn javahl="false" username="liuyuqiang" password="121044208">
        	<export srcUrl="${svn.url}/src" revision="HEAD" destPath="${project.source.home.path}" />
        	<!--
        	<checkout url="${svn.url}/WebRoot" revision="HEAD" destPath="${project.publish.home.path}/${project.name}" />
        	<export srcUrl="${svn.url}/WebRoot" revision="HEAD" destPath="${project.publish.home.path}/${project.name}" />
        	<export srcUrl="${svn.url}/src" revision="HEAD" destPath="${project.publish.home.path}/${project.name}/src" />
        	-->
        </svn>
	</target>
    <target name="init">
    	<echo message="${ant.project.name}: ${ant.file}"/>
		<delete dir="${project.source.home.path}"/>
    	<antcall target="checkout" />
        <mkdir dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>		 
        <copy includeemptydirs="false" todir="${project.publish.home.path}/${project.name}/WEB-INF/classes">
            <fileset dir="src">
                <exclude name="**/*.launch"/>
                <exclude name="**/*.java"/>
                <exclude name="**/.svn/**"/>
            </fileset>
        </copy>
    </target>
    <target name="clean">
        <delete dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    </target>
    <target depends="clean" name="cleanall"/>
    <target depends="build-subprojects,build-project" name="build"/>
    <target name="build-subprojects"/>
    <target depends="init" name="build-project">
		<!--
		<mkdir dir="${project.publish.home.path}/${project.name}/WEB-INF/lib"/>
		-->
    	<javac debug="true" debuglevel="${debuglevel}" destdir="${project.publish.home.path}/${project.name}/WEB-INF/classes" source="${source}" target="${target}" includeantruntime="on">
        	<compilerarg line="-encoding UTF-8" />
            <src path="src"/>
            <exclude name="**/.svn/**"/>
            <classpath refid="ap.classpath"/>
        </javac>
    	<jar jarfile="${project.publish.jar.file}" basedir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    	<delete dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    	<delete dir="${project.source.home.path}"/>
    </target>
</project>
















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值