`
modabobo
  • 浏览: 508174 次
文章分类
社区版块
存档分类
最新评论

Ant系列-第一个build.xml

阅读更多

Ant系列-第一个build.xml

前言

ANT是一个构建工具,它有跨平台、操作简单、安装简单、占用资源少等特点,它只有一个配置文件build.xml,我们要做的事情就是在build.xml中去定义我们想要做的事情,ANT它本身有很多命令和语法,笔者刚接触时也是比较头大,后面慢慢去学习查询,基本上了解了整个build.xml包含的内容,最好的学习办法就是查看例子,通过例子去熟悉不同标签里面的属性和参数的含义,我们不需要全部都要记住,只要在使用的时候知道如何去查询即可。

下面来构建我们第一个build.xml文件,这只是简单的开始:

在D:\test\ant\src下创建HelloWorld.java文件

package test.ant;
public class HelloWorld {
	public static void main(String[] args) {
		System.out.println("Hello World");
	}
}

在上一级目录创建build.xml文件,键入以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<project name="HelloWorld" default="run" basedir="."><!-- 项目名为HelloWorld,default代表默认要做的事情,.代表当前目录-->
	<property name="src" value="src"/><!-- 定义src变量 -->
	<property name="dest" value="classes"/> <!-- 定义dest变量-->
	<property name="hello_jar" value="hello.jar"/><!-- 定义hello_jar变量-->
	<target name="init"> <!-- 定义一个目标,这里表示初始化,mkdir表示创建一个目录,${dest}表示取变量dest的值 -->
		<mkdir dir="${dest}"/>
	</target>
	<!-- 编译目标,depends是它依赖的target,在init执行过才执行compile-->
	<target name="complie" depends="init"> 
		<!-- 运行javac命令 srcdir源目录 destdir目标目录-->
		<javac srcdir="${src}" destdir="${dest}"/>
	</target>
	<!-- 构建目标,依赖compile-->
	<target name="build" depends="complie">
		<!-- 运行jar命令 jarfile为jar文件 basedir为classes-->
		<jar jarfile="${hello_jar}" basedir="${dest}"/>
	</target>
	<!--运行-->
	<target name="run" depends="build">
		<java classname="test.ant.HelloWorld" classpath="${hello_jar}"/>
	</target>
	<!-- 删除生成的文件-->
	<target name="clean">
		<delete dir="${dest}"/>
		<delete file="${hello_jar}"/>
	</target>
	<!--再次运行-->
	<target name="rerun" depends="clean,run">
		<ant target="clean"/>
		<ant target="run"/>
	</target>
</project>


来总结一下以上用到的元素:

project节点元素

Ant构建文件的根元素,属性:

  • name属性:用于指定project元素的名称。
  • default属性:用于指定project默认执行时执行的target的名称。
  • basedir属性:用于指定基路径的位置。

property节点元素

用于定义变量或参数的定义,属性:

  • name属性:变量名字
  • value属性:变量值

ant有一些内建的特性如:
ant.file-->构建文件如build.xml文件所在的路径
ant.home->ant的根路径
ant.java.version->java版本
ant.project.name->当前project的名字,在build.xml的开头指定
ant.version->ant版本

target节点元素

可以看做是一个任务,它有如下属性:

  • name属性:指定target元素的名称。
  • depends属性:用于描述target之间的依赖关系。
  • if属性:用于验证指定的属性是否存在,若不存在,所在target将不会被执行。
  • unless 属性:该属性的功能与 if 属性的功能正好相反,它也用于验证指定的属性是否存在,若不存在,所在 target 将会被执行。
  • description 属性:该属性是关于 target 功能的简短描述和说明。

mkdir命令

创建目录。

javac命令

用于编译一个或一组java文件。

jar命令

用来生成一个JAR文件。

delete命令

对文件或目录进行删除。



参考:ant入门使用指南http://blog.csdn.net/ibm_hoojo/article/details/9093919



分享到:
评论

相关推荐

    jmeter+ant所需要的build.xml文件

    第一次做jmeter+ant自动化接口测试,需要build文件,开始直接copy博客中的内容,格式不对,调试好久不成功;后发现在jmeter/extras文件夹中有一个build文件,copy出来根据需要修改下,成功了,特上传自选供大家使用...

    apache-ant-1.9.3.rar

    Ant构建文件默认名为build.xml,也可以取其他的名字。只不过在运行的时候 把这个命名当作参数传给Ant。构建文件可以放在任何的位置。一般做法是放在项目顶层目录中。 这样可以保持项目的简洁和清晰。下面是一个典型...

    struts2.0 第五章 第1,2节

    书中的代码按章存放,如第1章所使用的代码放在codes文件夹的01文件夹下,依此类推。 代码的运行的前提条件: 1.安装j2eesdk-1_4_02_2005Q2-windows-ml.exe,安装完成后,添加CLASSPATH环境变量,该环境变量的值为....

    ant-1.9.1.jar中文-英文对照文档.zip

    (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以...

    ant-1.10.1.jar中文-英文对照文档.zip

    (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以...

    JNSP (java network service platform)

    1. 可以使用 ant 工具指定目录下 build.xml 文件,编译. 2. TestServerAssistant 是模拟一个第三方的服务,可以采用这个方式启动 java -classpath ./:./bin/:/home/huangzheng/MyTest/pack/nioserver.jar:/home/...

    android-junit-report-dev

    1、 在应用tests目录文件下新建一个libs文件夹,将android-junit-report-dev.jar拷贝到该libs文件夹中 2、 在应用tests目录中的Android.mk文件加上如下配置: LOCAL_STATIC_JAVA_LIBRARIES += android-junit-report...

    struts 2.0 源码 第三章

    书中的代码按章存放,如第1章所使用的代码放在codes文件夹的01文件夹下,依此类推。 代码的运行的前提条件: 1.安装j2eesdk-1_4_02_2005Q2-windows-ml.exe,安装完成后,添加CLASSPATH环境变量,该环境变量的值为....

    Maven权威指南 很精典的学习教程,比ANT更好用

    Maven是Ant的另一种选择么? 1.7. 比较Maven和Ant 1.8. 总结 2. 安装和运行Maven 2.1. 验证你的Java安装 2.2. 下载Maven 2.3. 安装Maven 2.3.1. 在Mac OSX上安装Maven 2.3.2. 在Microsoft Windows上安装...

    第一个RMI的网络应用编程示例--帮助理解EJB的生命周期

    8. 输入ant -f build-rmi-client.xml可以看到第一个RMI示例演示成功。 注:需要把RegisterRocket.java和ShowRocketClient.java文档中的计算名和IP改成你自己机器的名称或IP。 问题:第一次运行成功,但是如果关掉...

    drools-distribution-7.10.0.Final

    打开菜单运行,菜单项编辑配置,添加一个新的应用程序 主类“org.drools.example . droolsexamplesapp” 然后运行VM参数“-Xms256m -Xmx512m -服务器”。 阅读参考手册 - - - - - - - - - - - - - - - - - - - - - -...

    iuhyiuhkjh908u0980

    我们的Hello World程序是你开发基于Struts2框架程序的第一步.这里我们会提供循序渐进的教程来开发基于Struts2框架的Hello World程序. 教程包含基本的步骤像创建目录结构,建立build.xml文件来使用Ant构建工具创建程序...

    Ant速学笔记.doc

    首先解释下学习Ant是为了写CC中的build.xml,说一本文介绍的东西虽然不能完成复杂的Ant,但是完成CC中的build.xml还是可以的。 第一 拷贝操作 拷贝操作分为拷贝文件操作和拷贝文件夹操作 拷贝文件操作:

    randomized_optimization

    随机优化跑步编译和运行 cd codeantjava -cp ABAGAIL.jar opt.test.IonosphereTest注意对于ant 1.9.3及以后版本,需要在build.xml中加入以下内容 additionalparam="subpackages"运行第 1 部分: java -cp ABAGAIL....

    Eclipse+Web开发从入门到精通(实例版)

    1.3 第一个Java 实例... 4 1.3.1 新建Java 项目... 4 1.3.2 配置构建路径... 4 1.3.3 新建Java 类... 5 1.3.4 设置命令行参数... 5 1.3.5 运行实例... 6 1.4 Java 应用程序实例... 6 1.4.1 排序算法的...

    新版Android开发教程.rar

    Android 是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。 Beta 版 的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 ...

    Servlets和JSP核心技术 卷2(英文版) 第一部分

    Using Ant to Build a Web Application Section A.7. Example: Building a Web Application Section A.8. Using Ant to Create a WAR File Section A.9. Example: Creating a Web Application WAR File Index

    jacana:jacana 矫正器和 qa

    哈卡纳对齐 基于令牌的字对齐器。 Source: ... 然后输入: ant -f build.align.xml build/lib/jacana-align.jar将为您构建。 演示 scripts-align/runDemoServer.sh显示网络演示。 将您的浏览器定向到

    《程序天下:J2EE整合详解与典型案例》光盘源码

    第一章 J2EE快速入门 1.1 J2EE概述 1.1.1 J2EE的来源 1.1.2 J2EE整体框架 1.1.3 从J2EE到JavaEE 1.2 J2EE组件 1.2.1 客户端组件 1.2.2 Web组件 1.2.3 业务逻辑组件 1.3 J2EE容器 1.3.1 容器服务 1.3.2 容器类型 1.4 ...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    第一章 J2EE快速入门 1.1 J2EE概述 1.1.1 J2EE的来源 1.1.2 J2EE整体框架 1.1.3 从J2EE到JavaEE 1.2 J2EE组件 1.2.1 客户端组件 1.2.2 Web组件 1.2.3 业务逻辑组件 1.3 J2EE容器 1.3.1 容器服务 1.3.2 容器类型 1.4 ...

Global site tag (gtag.js) - Google Analytics