一个Ant包括连接SVN的详细配置

我的项目是这样子的,有一个公共的类库,一个开发的项目,从SVN上更新下来发布。


<?xml version="1.0" encoding="UTF-8"?>
<!-- author:qiaohq -->
<!-- name属性 用于指定project元素的名称。
default属性 用于指定project默认执行时所执行的target的名称。
basedir属性 用于指定基路径的位置。该属性没有指定时,使用Ant的构件文件的附目录作为基准目录。

-->
<project name="eisproject" default="compile" basedir="d:/tools/ant">
<!-- 我存放的项目地址 -->
<property name="project" value="d:/work/test/project"></property>
<!-- 存放公共类库项目 -->
<property name="common" value="d:/work/test/common/src"></property>
<!-- 存放lib包的地方-->
<property name="lib" value="D:/work/localwork/project/webroot/WEB-INF/lib"></property>
<property name="src" value="${project}/src"></property>
<property name="build" value="${project}/webroot"></property>
<property name="classpath" value="${project}/webroot/WEB-INF"></property>
<property environment="myenv"></property>
<!-- target元素 它为Ant的基本执行单元,它可以包含一个或多个具体的任务。
多个target可以存在相互依赖关系。它有如下属性:
1)name属性 指定target元素的名称,这个属性在一个project元素中是唯一的。
我们可以通过指定target元素的名称来指定某个target。
2)depends属性 用于描述target之间的依赖关系,若与多个target存在依赖关系时,需要以“,”间隔。
Ant会依照depends属性中target出现的顺序依次执行每个target。被依赖的target会先执行。
3)if属性 用于验证指定的属性是否存在,若不存在,所在target将不会被执行。
4)unless属性 该属性的功能与if属性的功能正好相反,它也用于验证指定的属性是否存在,
若不存在,所在target将会被执行。
5)description属性 该属性是关于target功能的简短描述和说明。
-->
<!-- 初始化新建 -->
<target name="init">
<mkdir dir="${build}/WEB-INF/classes"/>
</target>
<!-- ========================= -->
<!-- target: build -->
<!-- ========================= -->
<target name="clean" depends="init" description="">
<delete dir="${classpath}/classes/com"></delete>
</target>
<target name="copy" description="烤贝公共类">
<copy todir="${src}/com">
<fileset dir="${common}">
</fileset>
</copy>

</target>
<target name="compile" depends="clean,init,checkout,copy" description="--> compile and jar this component">
<javac srcdir="${src}" destdir="${classpath}/classes" debug="on">
<classpath refid="master-classpath"/>
<compilerarg value="-Xlint:unchecked -Xlint:deprecation" />

</javac>
<copy todir="${classpath}/classes">
<fileset dir="${src}">
<exclude name="**/*.java"/>
</fileset>
</copy>
</target>
<path id="master-classpath" >
<fileset dir="${lib}">
<include name="*.jar" />
</fileset>
<fileset dir="${myenv.CATALINA_HOME}/lib">
<include name="*.jar"/>
</fileset>
</path>
<path id="svnant.dir">
<fileset dir="D:/tools/cruisecontrol-bin-2.8.2/svnant-1.2.1/lib">
<include name="*.jar" />
</fileset>
</path>
<taskdef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="svnant.dir" />
<!-- 导出svn -->
<target name="checkout">
<svn username="test" password="steven" javahl="true">
<checkout url="https://192.168.249.82/svn/Repository/Project-SIPG ENG-DEPT/src" revision="HEAD" destPath="${src}" />
<checkout url="https://192.168.249.82/svn/Repository/Project-SIPG ENG-DEPT/webroot" revision="HEAD" destPath="${build}" />
<checkout url="https://192.168.249.82/svn/Repository/Project-COM HB Library/src/com" revision="HEAD" destPath="${common}" />
</svn>
</target>
<!-- 发布 -->
<target name="buildfile" depends="compile" description="--> compile and jar this component">
<copy todir="${myenv.CATALINA_HOME}/webapps/project">
<fileset dir="${build}">

</fileset>
</copy>
<copy todir="${myenv.CATALINA_HOME}/webapps/project/WEB-INF/lib">
<fileset dir="${lib}">

</fileset>
</copy>
</target>
<target name="build" depends="compile,init" description="--> compile and jar this component">
<war destfile="${myenv.CATALINA_HOME}/webapps/eis.war" webxml="${classpath}/web.xml">
<fileset dir="${build}">
</fileset>
</war>
</target>
<target name="tomcat-startup" description="tomcat starting.....">
<exec executable="${myenv.CATALINA_HOME}/bin/startup.bat" spawn="true" vmlauncher="false">
<env key="CATALINA_HOME" value="${myenv.CATALINA_HOME}" />
<arg line="/c start ${myenv.CATALINA_HOME}/bin/startup.bat" />
</exec>
</target>
<target name="tomcat-startdown">
<java jar="${myenv.CATALINA_HOME}/bin/bootstrap.jar" fork="true">
<jvmarg value="-Dcatalina.home=${myenv.CATALINA_HOME}"/>
<arg line="stop"/>
</java>
<waitfor maxwait="5" maxwaitunit="second">
<available file="errors.log"/>
</waitfor>
</target>
<target name="tomcat-restart" >
<antcall target="tomcat-startdown"></antcall>
<antcall target="tomcat-startup"></antcall>
</target>
</project>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值