Ant,apache开源项目,基于Java的构建工具,是一个小程序。它通过自动完成所有的编译代码,运行测试以及

打包重新部署等繁琐费力的任务来帮助软件团队开发大程序;

Ant的目标是自动完成所有的构建过程;

安装:

和安装JDK一样,在环境变量配置ANT_HOME;

然后在PATH加上%ANT_HOME%bin;

要求先有JDK环境,因为基于Java的构建工具,所以要先配置JDK;

配置好可以子啊控制台输入 ant -version 测试是否安装成功;

运行ant例子:

新建空文件夹;

控制台进入该文件夹;

新建a.xml :

<project name="MyProject" default="demo1">
  <target name="demo1">
 	<echo message="hello www"/>
  </target>
</project>

控制台输入 ant -f a.xml; (如果输入ant默认执行build.xml)

输出 [echo] hello www



ant -f a.xml demo1 : 执行a.xml 的名为demo1的target;

Ant的核心:构建文件

用来描述如何创建工程,在这个文件里,开发者列出各种构建目标以及达成这些目标的任务;配置文件默认名是

build.xml,如果自己命名如:a.xml那么在执行时用:ant -f a.xml;

重点是学习写配置文件build.xml; 下面举几个例子,了解更多可以看文档

根元素是project

1,输出信息

<!--工程-->
<project name="MyProject" default="demo1">
	<!--容器->相当于数据库中的事务 -->
	<target name="demo1">
	<!--回显HelloWorld ..-->
		<echo message="hello www" />
		<echo>my name is jerome</echo>
	</target>
	<!-- -->
</project>

在控制台输入ant -f a.xml 输出信息;(有时候报错是因为文件不是utf-8,修改一个编码就可以)

2.回显属性

<!--工程-->
<project name="MyProject" default="demo1">

	<property name="p1" value="hello p1"></property>
	<!--容器->相当于数据库中的事务 -->
	<target name="demo1">
	<!--回显HelloWorld ..-->
		<echo message="hello www" />
		<echo>my name is jerome</echo>
	</target>
	<!--属性-->
	<target name="demo2">
	<!--回显属性-->
		<echo>${p1}</echo>
	<!-- -->
	</target>
</project>

控制台输入 ant -f a.xml demo2 输出hello p1;

3.拷贝 在当前文件夹新建1.txt

<!--工程-->
<project name="MyProject" default="demo1">

	<property name="p1" value="hello p1"></property>
	<!--容器->相当于数据库中的事务 -->
	<target name="demo1">
	<!--回显HelloWorld ..-->
		<echo message="hello www" />
		<echo>my name is jerome</echo>
	</target>
	<!--属性-->
	<target name="demo2">
	<!--回显属性-->
		<echo>${p1}</echo>
	<!-- -->
	</target>

	<!--拷贝-->
	<target name="demo3">
		<echo message="拷贝文件" />
		<copy file="1.txt" todir="../d1" ></copy>
	</target>
</project>

执行 ant -f a.xml demo3 ;

其实我们会发现这些命令都是dos命令;

执行一个java例子:

在当前目录下新建src目录,

在src目录下新建HelloWorld.java
public class HelloWorld {
	public static void main(String[] args) {
		System.out.println("Hello world !");
	}
}

(可以在Eclipse新建HelloWorld然后直接拷贝过来)

配置文件修改如下:

<!--工程-->
<project name="MyProject" default="run">
	<!--初始化操作 新建文件夹-->
	<target name="init">
		<!--在当前文件夹下新建文件夹build/classes-->
		<mkdir dir="build/classes" />
		<mkdir dir="dist" />
	</target>
	<!--编译 -->
	<target name="compile">
		<javac srcdir="src" destdir="build/classes" />
		<echo>编译完成!</echo>
	</target>
	<target name="archive" depends="compile">
		<jar destfile="dist/project.jar" basedir="build/classes" />
	</target>
	<!--删除文件夹 -->
	<target name="clean" depends="init">
		<delete dir="build" />
		<delete dir="dist" />
	</target>

	<!--运行程序-->
	<target name="run" depends="compile">
		<java classname="HelloWorld" classpath="build/classes"></java>
	</target>
</project>

1, 执行前先初始化,创建文件夹:ant –f a.xml init

2, 执行 程序:运行 ant –f a.xml    成功输出:Hello world !

3, 打包成jar包: ant –f a.xml archive

4, 删除文件夹 ant –f a.xml clean


打成war



Ant简介的更多相关文章

  1. Apache Ant 简介和配置

    Apache Ant 简介     Apache Ant是目前事实上的Java应用的标准build脚本工具.使它大受欢迎的一个主要愿意是它的和灵活,允许程序员创建自己的Task来对Ant进行扩展.   ...

  2. Maven和Ant简介以及两者的区别

    Maven 一.Maven简介 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具. 目前,绝大多数开发人员都把 Ant 当作 Java 编程 ...

  3. ant 介绍 http://blog.csdn.net/sunjavaduke/archive/2007/03/08/1523819.aspx

    转自: 本内容包含了Ant的历史简要介绍,Ant的功能以及Ant框架的介绍,并对下载安装使用Ant进行了示例介绍,同时通过一个Java程序讲解了Ant的基本使用方法. 1.       Ant简介:这 ...

  4. Java构建工具Ant小记(一)

    Ant简介 Ant是基于java的构建工具.理论上来说它类似与make工具,但是却克服了make的一些固有的缺陷. 传统的Make是基于操作系统shell的构建工具,虽然也可以基于工作的os对make ...

  5. Ant基本使用指南

    近期碰到了其他人在讨论这个ant,已经很多人在使用,故对他进行收集资料进了解,以便方便去使用.同时,在学习struts+spring+hibernate,尤其是Appfuse的过程中大量涉及到ant的 ...

  6. 关于ant的使用和入门知识

    入门技术 在学习struts+spring+hibernate,尤其是Appfuse的过程中大量涉及到ant的使用,因此我觉得有必要对ant做个比较深入的学习,以下是在学习过程中搜集的材料.比较详细, ...

  7. Ant学习总结1

    一.Ant简介 Ant是用来编译/运行/测试java程序,构建.包装和发布过程中几乎每一件事都可以由Ant的任务来处理. 二.Ant管理项目    当开始一个新的项目时,首先应该编写Ant的构建文件, ...

  8. Ant基础知识1

    1.Ant简介 Apache Ant是一个将软件编译/测试/部署等步骤联系在一起加以优化的一个构建工具,常用于java环境中的软件开发.Ant的默认配置文件是build.xml. 对java语言的支持 ...

  9. Ant 初级入门

    一.Ant简介 Ant是一个Apache基金会下的跨平台的构件工具. 由于Ant是基于Java的,所以需要Java环境的支持,也就是配置好 JAVA_HOME 和 ANT_HOME 环境变量分别指向J ...

随机推荐

  1. HTTP响应状态解析

    100 客户端应当继续发送请求.这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝.客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应.服务器必须在请求完成后向客 ...

  2. Spring Boot简单应用——会员管理系统

    简介 本项目是使用Spring Boot编写的一个简单的会员管理系统. 提供了会员的解决方案,主要有会员模块,管理员模块,礼品模块,商品模块,会员等级模块,生日提醒模块,积分模块,详细模块如下图 准备 ...

  3. MYSQL存储过程中事务和DECLARE EXIT/CONTINUE HANDLER的使用

    -- 1.DECLARE EXIT HANDLER FOR SQLEXCEPTION 语句后面可以跟一个 begin end的复合语句块,也可以直接跟一个简单语句例如 :DECLARE EXIT HA ...

  4. 不用第三方解码库取得图片宽高 附完整C++算法实现代码

    在特定的应用场景下,有时候我们只是想获取图片的宽高, 但不想通过解码图片才取得这个信息. 预先知道图片的宽高信息,进而提速图片加载,预处理等相关操作以提升体验. 在stackoverflow有一篇相关 ...

  5. [HNOI 2008]越狱

    Description 监狱有连续编号为1...N的N个房间,每个房间关押一个犯人,有M种宗教,每个犯人可能信仰其中一种.如果 相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱 I ...

  6. [SDOI 2008]仪仗队

    Description 作为体育委员,C君负责这次运动会仪仗队的训练.仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断队伍是 ...

  7. 栅栏(fence)

    [问题描述]小 v 家有一条栅栏,由 n 个木板顺序组成,第 i 个木板的高度是 Ai.现在小镇上流行在栅栏上画矩形,所以小 v 也要在自家的栅栏上画.若要在区间[x,x+k-1]这个区间画一个宽度为 ...

  8. hdu 5112 (2014北京 水)

    题意:有个人在跑步,一直每个时间他所在的位置,求最大速度 #include <iostream> #include <cstring> #include <cstdio& ...

  9. Windows下使用notepad++对文本进行行列转换

    行转列: Ctrl + F  选择替换 查找目标:填写指定的内容 替换为:\r\n 查找模式:正则表达式 单击替换或全部替换按钮 列转行: Ctrl + F  选择替换 查找目标:\r\n 替换为:不 ...

  10. 【转】动态规划DP

    [数据结构与算法] DP 动态规划 介绍 原创 2017年02月13日 00:42:51 最近在看算法导论. DP全称是dynamic programming,这里programming不是编程,是一 ...