ant实例

<?xml version="1.0" encoding="UTF-8"?>
<project name="Nightingale" default="" basedir=".">
<target name="init">
<echo message="初始化打 war包需要的路径变量"/>
<!--获取系统时间-->
<tstamp>
<format property="sys.time" pattern="yyyy-MM-dd_HH-mm-ss"></format>
</tstamp>
<!--读取build.properies文件-->
<property file="${basedir}/build.properties"/>
<!--配置java编译环境 -->
<path id="Nightingale.compile.classpath">
<fileset dir="${weblib.dir}">
<include name="**/*.jar" />
</fileset>
<fileset dir="${builder.basedir.j2ee}">
<include name="**/*.jar" />
</fileset>
</path>
<!--判断conf文件夹下面是否有文件-->
<available file="${publish.conf}" property="keyfile.exist" />
</target>

<!--删除publish文件夹,并删除war包 -->
<target name="clean" depends= "init">
<echo message="清空源文件"/>
<delete dir="${publish.dir}" />
<delete><fileset dir="${builder.basedir}" includes="**/*.war"/></delete>
</target>

<!--创建publish文件夹 -->
<target name="prepare" depends= "clean">
<echo message="创建文件夹"/>
<mkdir dir="${publish.dir}"/>
</target>

<!-- 拷贝功能目录下的webRoot文件到publish中,并编译java文件 -->
<target name="build-copy" depends="prepare">
<echo message="拷贝 webRoot文件到编译后的路径下"/>
<copy todir="${publish.dir}">
<fileset dir="${webapp.dir}"/>
</copy>
<echo message="编译 java 文件,拷贝 属性配置文件到编译后的路径下"/>
<javac destdir="${publish.classes}">
<src path="${java.src.dir}" />
<classpath refid="Nightingale.compile.classpath" />
</javac>
</target>

<!-- 拷贝conf目录下的文件到publish中-->
<target name="conf.exist" if="${keyfile.exist}">
<echo message="拷贝conf文件目录下的文件到工程conf目录下--${publish.conf}"/>
<copy todir="${publish.web.conf}" overwrite = "true" verbose="true">
<fileset dir="${publish.conf}"/>
</copy>
</target>
<target name="conf.unexist" unless="${keyfile.exist}">
<echo message="${publish.conf}文件夹下不存在文件"/>
</target>

<!--把publish中的文件打包成war文件 -->
<target name="publish-war" depends="build-copy,conf.exist,conf.unexist">
<echo message="打 war 包,不将 java 文件打入包内"/>
<war warfile="${war.file}" webxml="${publish.web}">
<fileset dir="${publish.dir}" />
</war>
</target>

<!-- 把war包,拷贝到服务器上 -->
<target name="publish-remote">
<antcall target="publish-war" />
<echo>发送文件 ${war.file} 到服务器上...</echo>
<scp file="${war.file}" todir="${publish.remote.username}:${publish.remote.password}@${publish.remote.host}:${publish.remote.apphome}" passphrase="" verbose="true" trust="true"/>
</target>
</project>



java.src.dir = ${basedir}/src
webapp.dir = ${basedir}/WebRoot
weblib.dir = ${webapp.dir}/WEB-INF/lib/
builder.basedir = ${basedir}/build
builder.basedir.j2ee = ${builder.basedir}/lib/

<!-- Directory structure of the project -->
publish.dir = ${builder.basedir}/publish
publish.web = ${publish.dir}/WEB-INF/web.xml
publish.classes = ${publish.dir}/WEB-INF/classes
publish.web.conf = ${publish.classes}/conf
publish.conf = ${builder.basedir}/conf
war.file = ${builder.basedir}/Nightingale_${sys.time}.war
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值