Ant安装与配置&build.xml文件说明
Posted nikeylee
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ant安装与配置&build.xml文件说明相关的知识,希望对你有一定的参考价值。
Apache Ant介绍
Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。
优点:
- 使用java开发,并用xml存储build信息,因此是跨平台的。
- 程序员可以自己扩展Ant。程序员可以自己写java程序来扩展Ant,创建自己的tasks。
特点:
- Ant使用XML来存储build信息,在xml文件里有很多task的定义,默认使用的文件是build.xml
- Ant可以通过<exec>标签来实现调用shell
一、Windows下安装Ant
1、在ant的官网下载zip版本的压缩包
官网: http://ant.apache.org/bindownload.cgi
下载apache-ant-1.10.10-bin.zip,解压到本地盘
2、环境变量配置
1)添加一个新的系统变量ANT_HOME,指定为ant的安装位置D:\\apache-ant-1.10.10
2)在CLASSPATH里指定ant的lib目录
3)在PATH里指定ant的bin目录
4)检查Ant的配置
执行命令:
ant -version
5)编写build.xml文件
功能:将文件D:\\jacoco\\test.txt拷贝到D:\\jacoco\\test目录下,如果存在同名文件,覆盖;basedir为.表示的是当前目录
build.xml文件,放在D:\\jacoco目录下,在D:\\jacoco目录下执行ant命令(build.xml文件自动被识别)
<?xml version="1.0" encoding="GBK"?>
<project name="测试脚本" default="copyfile" basedir=".">
<target name="copyfile">
<copy file="D:\\jacoco\\test.txt" todir="D:\\jacoco\\test" overwrite="true"/>
</target>
</project>
执行结果:文件拷贝到对应目录
二、CentOS下安装Ant
预留位置
三、build.xml文件说明
创建FirstBuild.xml文件
1、<project>元素
name属性:标识工程名
basedir:指示根目录
default:标识默认执行的target,如果运行ant时不指定属性,Ant将执行这个target(target的name为copyfile的任务);
<project name="MyFirstAntProject" basedir="." default="copyfile">
2、<property>元素
定义了两个全局属性,分别是dir.name和file.name
这些属性是可选的,但使用属性会更方便,尤其是便于维护,一种更有效的方式是将这些属性放到一个专门文件里,从而使这个xml文件更加灵活,易于重用。
<property name="dir.name" value="${basedir}/mydir"/>
<property name="file.name" value="file1.txt"/>
3、要执行的<targets>元素
定义3个target任务,在copyfile任务运行前,先执行makedirectory任务;--denpends属性配置前置target任务
<target name="makedirectory" description="Create directory mydir">
<mkdir dir="${dir.name}"/>
</target>
<target name="copyfile" depends="makedirectory" description="Copy files">
<copy file="${file.name}" todir="${dir.name}"/>
</target>
<target name="clean" description="Clean up task">
<delete dir="${dir.name}"/>
</target>
4、第一次运行FirstBuild.xml文件:ant -buildfile <filename> <target-name>
运行命令格式:没有使用-buildfile参数,那么Ant将默认使用build.xml,如果没有build.xml,那么Ant将报错;
ant -buildfile <filename> <target-name>
FirstBuild.xml文件内容:先创建目录,再将文件拷贝到创建的目录中
<?xml version="1.0" encoding="UTF-8" ?>
<project name="MyFirstAntProject" basedir="." default="copyfile">
<property name="dir.name" value="${basedir}/mydir"/>
<property name="file.name" value="file1.txt"/>
<target name="makedirectory" description="Create directory mydir">
<mkdir dir="${dir.name}"/>
</target>
<target name="copyfile" depends="makedirectory" description="Copy files">
<copy file="${file.name}" todir="${dir.name}"/>
</target>
<target name="clean" description="Clean up task">
<delete dir="${dir.name}"/>
</target>
</project>
运行命令前文件目录截图:
运行命令:
ant -buildfile FirstBuild.xml
运行命令后文件目录截图:自动创建了mydir目录,再将file1.txt拷贝到mydir目录中
在文件中定义的property可以被Ant的参数所覆盖,如下面使用yourdir取代mydir:
ant运行的命令:
ant -buildfile FirstBuild.xml -Ddir.name=yourdir
运行后结果:自动创建了yourdir目录,再将file1.txt拷贝到yourdir目录中
一般在build.xml中都会有clean这个target,其作用有些像卸载软件程序:
运行命令:删除mydir目录
ant -buildfile FirstBuild.xml clean
运行结果:mydir目录被删除了
运行命令:删除yourdir目录
ant -buildfile FirstBuild.xml clean -Ddir.name=yourdir
四、通过ant方式使用Jacoco远程统计代码覆盖率
查看文章:https://blog.csdn.net/nikeylee/article/details/117354875
以上是关于Ant安装与配置&build.xml文件说明的主要内容,如果未能解决你的问题,请参考以下文章
Ant默认配置文件不是build.xml该如何编写命令进行编译打包