Ant命令语句

一、<project>标签

<project>标签是构建文件的根标签,每个构建文件对应一个项目,它的几个常用属性如下

name:表示project项目名

default:表示该Ant项目启动时默认执行的任务名,如果没有该参数,则需要在项目运行时手动指定执行的任务

basedir:表示项目执行的默认目录

<?xml version="1.0"?>
<project name="hello" default="sayBaseDir" basedir="C:\\Users\\Administrator\\Desktop">
    <target name="sayBaseDir">
        <echo message="The base dir is: ${basedir}"/>
    </target>
</project>

二、<target>标签

<target>标签表示是一个个的待执行的任务,在一个project标签下可以有多个target标签。同时,可以指定一个target依赖于另一个target,这样在执行时会先执行依赖的那个任务,然后才执行目标任务。这个属性是非常有用的,比如要编译执行一个Java文件,那么我们的执行顺序就应该是先编译然后再执行,这时我们就可以让执行class文件的那个任务依赖于编译Java文件的那个任务。target标签的几个常用属性如下:

name:表示任务名

depends:表示该任务依赖的任务名

if:表示仅当属性存在时才执行这个任务

unless:跟if的含义相反,表示当属性没被设置时才执行这个任务

<?xml version="1.0"?>
<project name="targetStudy" default="targetB">
<property name="zifangsky" value="www.zifangsky.cn" />
<target name="targetA" if="zifangsky">
    <echo message="Java Version: ${ant.java.version}" />
</target>
<target name="targetB" depends="targetA" unless="xxx">
    <echo message="The base dir is: ${basedir}" />
</target>
</project>

三、<mkdir>标签

<mkdir>标签顾名思义,可以创建一个文件夹

<mkdir dir="build/classes"/>

四、<delete>标签

<delete>标签可以对文件或者文件夹进行删除,常用属性如下:

file:表示要删除的文件

dir:表示要删除的目录

includeEmptyDirs:表示是否删除指定目录中的空目录,如:includeEmptyDirs=”true”

failonerror:表示在碰到错误时是否停止,默认是自动停止

<delete dir="build/classes" />

五、<copy>标签

<copy>标签用于复制文件或者目录,常用属性如下:

file:表示源文件

tofile:表示目标文件

todir:表示目标目录

overwrite:表示是否覆盖目标文件,默认是不覆盖

复制单个文件:

<copy file="old.txt" tofile="new.txt" />

复制一个文件到另一个目录:

<copy file="old.txt" todir="test1/addtest" overwrite="true" />

对目录进行复制:

<copy todir="test1/addtest"> 
<fileset dir="addtest"/>
</copy>

六、<move>标签

<move>标签用于移动文件或者目录,常用属性跟标签差不多

<move file="sourcefile" tofile="destfile" /> 
<move file="sourcefile" todir="destdir" /> 
<move todir="newdir" > 
<fileset dir="olddir" /> 
</move>

七、<filelist>标签

<filelist>标签表示一个文件列表,常用属性如下:

dir:表示文件目录

files:用逗号分隔的一个文件列表

refid :表示对某处定义的一个的引用

<filelist id="resourceFiles" dir="${res.src}" files="web.xml,application.xml" />
<filelist refid="resourceFiles" />
<filelist id="resourceFiles" dir="${res.src}">
<file name="web.xml" />
<file name="application.xml" />
</filelist>

八、<fileset>标签

<fileset>标签表示一种类型的文件列表,常用几个属性如下:

include:表示文件模式列表

exclude:表示不包含这些模式的文件列表

<copy todir="${buildwar.dest}/WEB-INF/classes" overwrite="true">
<fileset dir="${build.bin}">
    <include name="**/*.class" />
</fileset>
</copy>
<copy todir="${buildwar.dest}" overwrite="true">
<fileset dir="${webapp.dir}">
    <exclude name="/WEB-INF/classes/**" />
</fileset>
</copy>
<path id="buildpath">
<fileset refid="lib.runtime"/>
<fileset refid="lib.lib"/>
</path>

九、<property>标签

<property>标签用于定义一个参数

<property name="zifangsky" value="www.zifangsky.cn" />

十、<path>标签

<path>标签用于定义一个路径

<path id="classpath">
<fileset dir="${lib.dir}">
    <include name="**/*.jar" />
</fileset>
<fileset dir="${tomcat.home}/lib">
    <include name="**/*.jar" />
</fileset>
</path>

十一、<javac>标签

<javac>标签用于编译Java文件,常用几个属性如下:

srcdir:表示源代码路径

destdir:表示生成的class文件的路径

<target name="compile" depends="clean">
<mkdir dir="build/classes" />
<javac srcdir="src" destdir="build/classes" />
</target>

十二、<java>标签

<java>标签用于执行.class文件,常用属性如下:

classname :表示将执行的类名

jar:表示包含该类的JAR文件名

classpath:表示用到的类路径

<target name="run" depends="compile">
<java classname="javase.base.Demo2">
    <classpath>
        <pathelement path="build/classes/" />
    </classpath>
</java>
</target>

十三、<jar>标签

<jar>标签用于将class文件打包成jar包,常用属性如下:

basedir:表示待归档的目录

destfile:表示生成的JAR文件名

<?xml version="1.0"?>
<project name="javacTest" default="makeJar" basedir=".">
<target name="clean">
    <delete dir="build"/>
</target>
<target name="compile" depends="clean">
    <mkdir dir="build/classes"/>
    <javac srcdir="src" destdir="build/classes"/>
</target>
<target name="run" depends="compile">
    <java classname="javase.base.Demo2">
        <classpath>
            <pathelement path="build/classes/"/>
        </classpath>
    </java>
</target>
<target name="makeJar" depends="run">
    <jar destfile="Demo.jar" basedir="build/classes">
        <manifest>
            <attribute name="Main-class" value="javase.base.Demo2"/>
        </manifest>
    </jar>
</target>
</project>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值