Ant是一种基于Java的build工具。由一些内置任务组成。这些任务用于编译和运行java应用、创建文档、文件和文件夹的操作。

理论上来说。它有些类似于(Unix)C中的make ,但没有make的缺陷。

眼下的最新版本号为:Ant
1.9.4。

我们已经有了make, gnumake, nmake, jam以及其它的build工具为什么还要要一种新的build工具呢

由于Ant的原作者在多种(硬件)平台上开发软件时,无法忍受这些工具的限制和不便。

类似于make的工具本质上是基于shell(语言)的:他们计算依赖关系。然后运行命令(这些命令与你在命令行敲的命令没太大差别)。

这就意味着你能够非常easy地通过使用OS特有的或编写新的(命令)程序扩展该工具;然而,这也意味着你将自己限制在了特定的OS,或特定的OS类型上。如Unix。

Ant的构建文件:

   当開始一个新的项目时,首先应该编写Ant构建文件。

构建文件定义了构建过程。并被团队开发中每一个人使用。

Ant构建文件默认命名为build.xml。也能够取其它的名字。仅仅只是在执行的时候把这个命名当作參数传给Ant。

构建文件能够放在不论什么的位置。

一般做法是放在项目顶层文件夹中,这样能够保持项目的简洁和清晰。

    Ant构建文件是XML文件。

每一个构建文件定义一个唯一的项目(Project元素)。每一个项目下能够定义非常多目标(target元素),这些目标之间能够有依赖关系。当运行这类目标时,须要运行他们所依赖的目标。

每一个目标中能够定义多个任务,目标中还定义了所要运行的任务序列。Ant在构建目标时必须调用所定义的任务。

任务定义了Ant实际运行的命令。Ant中的任务能够为3类。

(1) 核心任务。核心任务是Ant自带的任务。

(2) 可选任务。可选任务实来自第三方的任务,因此须要一个附加的JAR文件。

   (3) 用户自己定义的任务。用户自己定义的任务是用户自己开发的任务。


Ant的长处:
 

跨平台性。Ant是纯Java语言编写的。因此具有非常好的跨平台性。

         操作简单。Ant是由一个内置任务和可选任务组成的。Ant执行时须要一个XML文件(构建文件)。Ant通过调用target树,就能够执行各种task。

每一个task实现了特定接口对象。因为Ant构建文件时XML格式的文件,所以非常easy维护和书写,并且结构非常清晰。

         Ant能够集成到开发环境中。因为Ant的跨平台性和操作简单的特点,它非常easy集成到一些开发环境中去。

J2EE之ANT的更多相关文章

  1. java System.getProperty()参数大全

    java.version Java Runtime Environment versionjava.vendor Java Runtime Environment vendorjava.vendor. ...

  2. java开发工具比较(16个工具修订版)

    1.JDK (Java Development Kit)Java开发工具集 SUN的Java不仅提了一个丰富的语言和运行环境,而且还提了一个免费的Java开发工具集(JDK).开发人员和最终用户可以利 ...

  3. Java开发工具全面比较

    1.JDK (Java Development Kit)Java开发工具集 从初学者角度来看Java开发工具,采用JDK开发Java程序能够很快理解程序中各部分代码之间的关系,有利于理解Java面向对 ...

  4. JAVA程序员常用开发工具

    1.JDK (Java Development Kit)Java开发工具集 SUN的Java不仅提了一个丰富的语言和运行环境,而且还提了一个免费的Java开发工具集(JDK).开发人员和最终用户可以利 ...

  5. Java入门之IDE集成开发环境安装及配置

    常用的开发工具 一.Eclipse Eclipse 是一个开放源代码的.基于 Java 的可扩展开发平台.就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境.幸运的是,Eclipse ...

  6. 在intellij idea 中怎么不用git 解除关联

    展开全部 file ->settings->version control 选中这一栏,右边有个 点红色减号,就解除了,然后去项目目录下删除.git这个文件夹,你可以不删除,为了以后继续关 ...

  7. java运行环境搭建

    java运行环境搭建 1.安装jdk下载和安装 1). java是Sun公司的产品,由于Sun公司被Oracle公司收购,因此jdk可以在Oracle的官网下载.网址:https://www.orac ...

  8. IntelliJ IDEA 2018 for Mac专业使用技巧

    IntelliJ IDEA 2018 for Mac是一个综合性的Java编程环境,被许多开发人员和行业专家誉为市场上最好的IDE,它提供了一系列最实用的的工具组合:智能编码辅助和自动控制,支持J2E ...

  9. IntelliJ IDEA 2018 for Mac使用技巧

    IntelliJ IDEA 2018 for Mac是一个综合性的Java编程环境,被许多开发人员和行业专家誉为市场上最好的IDE,它提供了一系列最实用的的工具组合:智能编码辅助和自动控制,支持J2E ...

随机推荐

  1. 2301: [HAOI2011]Problem b

    2301: [HAOI2011]Problem b Time Limit: 50 Sec  Memory Limit: 256 MBSubmit: 4164  Solved: 1888[Submit] ...

  2. Unity SendMessage方法

    我们今天研究下SendMessage方法, 如果我们需要执行某一个组件的方法时候可以使用SendMessage gameObject.SendMessage("A"); 即可通知当 ...

  3. python部分排序算法(网友提供)

    // 冒泡排序 def bubble(x,n):    '''This function orders the original items x x is list,n is the length o ...

  4. FZU 2108(dfs模拟,大数取余)

     K Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status Pr ...

  5. cocos2dx 3.0 研究(4)渲染分析

    http://blog.csdn.net/epeaktop/article/details/26730909中已经说明了程序的设计,让我们来看看在cocos2dx 3.0中代码是怎样实现的. void ...

  6. Zabbix使用外部邮箱服务器发送邮件报警

    本来是想自己写一篇文章的,但是看到发现网上有写的不错的,于是乎又抄别人的文章,作为记录. 使用外部邮箱来发生邮件明显好处就是防止其他邮箱服务器当垃圾邮件处理,另一方面能降低收邮件延迟. 下面开始进行使 ...

  7. My way to Python - Day03

    列表和字典的赋值 dict1 = {} dict1['k1'] = 'v1' list1 = [] list1.append('v1') 集合系列 1,计数器 Python 2.7.6 (defaul ...

  8. javascript无缝流畅动画轮播,终于让我给搞出来了。

    自己一直想写一个真正能用的轮播图,以前是写过一个,但是不是无缝的轮播,感觉体验很差,这个轮播之前也搞了很多实例,看了很多代码,但是脑子总转不过弯,为什么在运动到一定距离后可以突然转回到原始位置,而没有 ...

  9. javascript 模仿回车键事件

    <script> $(function(){ var _login = function (){ var _name = $('#name'); var _password = $('#p ...

  10. ASP.NET MVC:自定义 Route 生成小写 Url(转)

    先给出本文中测试用的 controller: public class PersonsController : Controller { public ActionResult Query(strin ...