一、Ant 概要基础知识

Apache Ant 是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git、TestNG等搭建持续集成测试开发环境,从而高效、高质量的构建产品。

Ant 有以下一些优点:

  1. 跨平台,可移植。Ant 是 Java 语言编写的,所以有很好的跨平台性和可移植性,无论是在 windows、Linux,还是 mac。
  2. 操作简单。 Ant 是由一个内置任务和可选任务组成的,运行时需要一个构建文件(build.xml),其通过调用目标树(target),就可以执行各种任务(task),同时每个 task 实现了特定接口对象。
  3. 易维护。Ant 构建文件(build.xml)是 XML 格式的文件,结构清晰简洁,所以很容易维护和书写。构建文件可以放在任何位置,通常建议将其放在项目的根目录中,以保持项目的简洁和清晰。

通常 Ant 构建项目的典型层次结构为:

  • src :存放源文件
  • classes :存放编译后的字节码文件
  • lib :存放第三方的 jar 包
  • dist :存放编译后的包,以及发布以后的代码

Ant 的构建文件是 xml 文件。每个构建文件定义一个唯一的项目(Project元素)。每个项目下可定义很多目标(target元素),这些目标之间可以有依赖关系。当执行这类目标时,需要执行他们所 依赖的目标。每个目标中可以定义多个任务,目标中还定义了所要执行的任务序列。Ant在构建目标时必须调用所定义的任务。任务定义了 Ant 实际执行的命令,其任务可分为以下几类:

  1. 核心任务:Ant 自带任务
  2. 可选任务:为第三方的任务,需要对应附加的 jar 文件
  3. 定制任务:用户自定义的任务,为用户自己开发的任务

二、windows 环境搭建

1.Ant 下载

进入 Apache Ant 下载 页面,如下所示,依据平台选择对应的 Ant 文件下载(此处选择 windows zip):

成功下载后,解压到本地文件夹,例如:D:\envConfig\apache-ant-1.9.6,解压后目录结构如下所示:

   ant
+--- README, LICENSE, fetch.xml, other text files. // ant 基本信息
+--- bin // 包含一些启动脚本等
|
+--- lib // 包含了 ant 所需的 jar 及其依赖
|
+--- docs // 说明文档、用户手册等
| |
| +--- images // 文档、用户手册中的图片
| |
| +--- manual // 用户手册(必读)
|
+--- etc // xls 相关(创建增强报告,从不同的任务输出;迁移构建文件,避免过时的警告等等)

2.Ant 环境变量配置

在系统变量中添加:ANT_HOME=D:\envConfig\apache-ant-1.9.6,用于启动脚本查找相应的库文件

在path变量中添加:path=%ANT_HOME%\bin;%path%

同时用户需要配置 JDK,JAVA_HOME 主要用于启动后加载 JDK/JRE,关于如何配置 JDK 请参阅 Java学习-001-JDK安装配置

3.Ant 验证

启动命令行窗口输入命令:ant,将获得如下所示的信息提示:

Buildfile: build.xml does not exist!
Build failed

  此时,可以说 Ant windows 环境已经配置成功,出现上述提示的原因是,缺失了 Ant 的构建文件 build.xml。若要查看 Ant 的版本,可在命令行窗口输入:ant -version,结果如下所示:

Apache Ant(TM) version 1.9.6 compiled on June 29 2015

  

至此, Ant学习-001-ant 基础知识及windows环境配置 顺利完结,希望此文能够给初学 ant 的您一份参考。

最后,非常感谢亲的驻足,希望此文能对亲有所帮助。热烈欢迎亲一起探讨,共同进步。非常感谢! ^_^

Ant学习-001-ant 基础知识及windows环境配置的更多相关文章

  1. Selenium2学习-001-Selenium2 WebUI自动化Java开发 Windows 环境配置

    此文主要介绍 Selenium2 WebUI自动化Java开发 Windows 环境配置,供各位亲们参考,若有不足之处,敬请各位大神指正,非常感谢! 所需软件列表如下所示: 所属分类 具体名称 备注 ...

  2. 如何学习FPGA?FPGA学习必备的基础知识

    如何学习FPGA?FPGA学习必备的基础知识 时间:2013-08-12 来源:eepw 作者: 关键字:FPGA   基础知识       FPGA已成为现今的技术热点之一,无论学生还是工程师都希望 ...

  3. MyBatis:学习笔记(1)——基础知识

    MyBatis:学习笔记(1)--基础知识 引入MyBatis JDBC编程的问题及解决设想 ☐ 数据库连接使用时创建,不使用时就释放,频繁开启和关闭,造成数据库资源浪费,影响数据库性能. ☐ 使用数 ...

  4. C#学习笔记(基础知识回顾)之值类型与引用类型转换(装箱和拆箱)

    一:值类型和引用类型的含义参考前一篇文章 C#学习笔记(基础知识回顾)之值类型和引用类型 1.1,C#数据类型分为在栈上分配内存的值类型和在托管堆上分配内存的引用类型.如果int只不过是栈上的一个4字 ...

  5. C#学习笔记(基础知识回顾)之值传递和引用传递

    一:要了解值传递和引用传递,先要知道这两种类型含义,可以参考上一篇 C#学习笔记(基础知识回顾)之值类型和引用类型 二:给方法传递参数分为值传递和引用传递. 2.1在变量通过引用传递给方法时,被调用的 ...

  6. C#学习笔记(基础知识回顾)之值类型和引用类型

    一:C#把数据类型分为值类型和引用类型 1.1:从概念上来看,其区别是值类型直接存储值,而引用类型存储对值的引用. 1.2:这两种类型在内存的不同地方,值类型存储在堆栈中,而引用类型存储在托管对上.存 ...

  7. Quartz学习笔记:基础知识

    Quartz学习笔记:基础知识 引入Quartz 关于任务调度 关于任务调度,Java.util.Timer是最简单的一种实现任务调度的方法,简单的使用如下: import java.util.Tim ...

  8. ASP.NET Core Windows 环境配置 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core Windows 环境配置 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core Windows 环境配置 ASP.NET Core ...

  9. cocos2d-x3.0 windows 环境配置

    cocos2d-x3.0 windows 环境配置 参考Oo泡泡糖oO的CSDN博文 :http://blog.csdn.net/u010296979/article/details/24273393 ...

随机推荐

  1. httpclient爬取性感美图

    依赖httpclient4.2,Jsop SemeiziCrawler.java package kidbei.learn.crawler; import java.io.File; import j ...

  2. ArcEngine开发:IElement.Geometry 值不在预期范围内 + 元素绘制代码

    IElement pEle = pLineEle as IElement; pEle.Geometry = pLn; pLn为一个ILine对象,想当然的以为它是IGeometry对象,可以赋值,结果 ...

  3. MySQL中的datetime与timestamp比较-------转载

    原文地址http://database.51cto.com/art/200905/124240.htm MySQL中的datetime与timestamp比较 本文将通过实例比较MySQL中的date ...

  4. Html - 圆圈border

    很多场景下需要对元素加入圆圈.但光靠border-radius其实还要调很久,所以做一下笔记 #binggan .mui-icon { display: inline-block; margin: 3 ...

  5. Css3 - 全面学习

    css3实验.生成.学习网站 http://www.css3maker.com/ http://www.css3.me/ 查询前缀和兼容性 http://caniuse.com/ 1.文本阴影 < ...

  6. java 找出字符串之间的字符

    package lia.meetlucene; import java.io.IOException; import java.util.ArrayList; import java.util.Arr ...

  7. Asp.Net:GridView 编辑、删除、自定义分页以后备用

    页面 GridView 绑定:在中,有 <asp:BoundField/>和 <asp:TemplateField><ItemTemplate>嵌套服务器控件 &l ...

  8. SwfUpload学习记录

    参考资料: SWFUpload 2.5.0版 官方说明文档 中文翻译版 了解SWFUpload 多文件上传配置详解 WEB版一次选择多个文件进行批量上传(swfupload)的解决方案 jQuery轻 ...

  9. 【翻译】Kinect v2程序设计(C++) Body 篇

    Kinect SDK v2预览版的主要功能的使用介绍,基本上完成了.这次,是关于取得Body(人体姿势)方法的说明.   上一节,是使用Kinect SDK v2预览版从Kinect v2预览版取得B ...

  10. 使用PHP编写发红包程序

    使用PHP编写发红包程序 http://www.jb51.net/article/69815.htm 投稿:hebedich 字体:[增加 减小] 类型:转载 时间:2015-07-22   微信发红 ...