【学习笔记】系列十四:Ant安装与使用举例

近期在研究持续集成,涉及到Jenkins,GitLab,Ant,Maven等主流工具与技术,会慢慢整理成博文,以作参考

首先是Ant


Ant安装:

官网主页:http://ant.apache.org/

下载地址:http://ant.apache.org/bindownload.cgi

Windows下载解压zip,环境变量添加ANT_HOME,值为解压路径,并在PATH中添加%ANT_HOME%/bin

Linux下载解压tar,环境变量在/etc/profile中添加ANT_HOME,值为解压路径,并添加一行export PATH=$ANT_HOME/bin:$PATH

一切皆在安装jdk并配置环境变量之后,如果没有,走开,我不想跟你说话

配置成功后,Windows CMD下、Linux直接输入ant -version,回车执行,显示Ant版本号即为配置成功

不截图了,so easy


Ant使用:

Ant核心的build.xml文件,提供了各种应用接口,满足现有主流开发环境、测试框架

啥也不说了,直接上Demo,包含了编译、打jar包、打war包等操作,看不懂的也走开吧

<?xml version="1.0" encoding="UTF-8" ?>
<project name="xxxx" default="build" basedir=".">

	<!-- 定义属性 -->
	<property name="srcDir" location="build/classes" />
	<property name="testDir" location="build/test" />
	<property name="packDir" location="build/packages" />
	<property name="tarDir" location="build/xxxx" />

	<property name="package" value="com.xxxx.xxxx.xxxx" />
	<property name="mainClass" value="xxxx" />
	<property name="jarFile" location="${packDir}/xxxx.jar" />
	<property name="testFile" location="${packDir}/testxxxx.jar" />
	<property name="tarFile" location="${packDir}/xxxx.tar.gz" />

	<!-- 定义路径:编译java文件时使用到的jar包 -->
	<path id="run.classpath">
		<fileset dir="${basedir}">
			<include name="lib/*.jar" />
		</fileset>
	</path>

	<!-- 定义任务:清理独立于bin目录的ant编译目录 -->
	<target name="clean">
		<delete dir="build/" />
	</target>

	<!-- 定义任务:重新建立ant编译目录 -->
	<target name="init" depends="clean">
		<mkdir dir="${srcDir}" />
		<mkdir dir="${testDir}" />
		<mkdir dir="${packDir}" />
		<mkdir dir="${tarDir}" />
	</target>

	<!-- 定义任务:编译src文件夹下的java文件,编译后的class文件放入ant编译目录 -->
	<target name="compile" depends="init">
		<!-- 编译src -->
		<javac nowarn="true" srcdir="src/" destdir="${srcDir}" includeAntRuntime="false" debug="on" encoding="utf-8">
			<classpath refid="run.classpath" />
		</javac>

		<!-- 编译test -->
		<javac nowarn="true" srcdir="test/" destdir="${testDir}" includeAntRuntime="false" debug="on" encoding="utf-8">
			<classpath refid="run.classpath" />
		</javac>
	</target>

	<!-- 定义任务:将class集合文件打成jar包 -->
	<target name="makejar" depends="compile">
		<!-- 打包src -->
		<jar destfile="${jarFile}" basedir="${srcDir}">
			<!--
			<manifest>
				<attribute name="Main-Class" value="${package}.${mainClass}" />
			</manifest>
			-->
		</jar>

		<!-- 打包test -->
		<jar destfile="${testFile}" basedir="${testDir}" />
	</target>

	<!-- 定义任务:将项目文件打成tar包 -->
	<target name="maketar" depends="makejar">
		<mkdir dir="${tarDir}/lib" />
		<mkdir dir="${tarDir}/conf" />

		<copydir dest="${tarDir}/lib" src="${basedir}/lib" />
		<copydir dest="${tarDir}/conf" src="${basedir}/conf" />

		<copy todir="${tarDir}/lib" file="${jarFile}" />
		<copy todir="${tarDir}" file="${basedir}/script/run.sh" />
		<copy todir="${tarDir}" file="${basedir}/script/run_as_xdja.sh" />

		<tar compression="gzip" destfile="${tarFile}" basedir="${tarDir}" />
	</target>

	<!-- 只是输出个日志告知Ant正在工作 -->
	<target name="build" depends="clean,init,compile,makejar,maketar">
		<echo message="Ant is building project" />
	</target>
</project>


值得注意的是第二行的default="build",对应脚本中的<target name="build">,如此,可执行包含此target和其之前的所有target任务,如果赋值为前一个target的名称,则此名称为build的target任务不会执行

下次会整理单元测试的ant脚本,包括junit、testNG,并提供报告

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值