知识大全 Lesson 1.02 Ant的安装和配置(图)

Posted 文件

篇首语:热水治不了百病,情话过不了一生。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Lesson 1.02 Ant的安装和配置(图)相关的知识,希望对你有一定的参考价值。

Lesson 1.02 Ant的安装和配置(图)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  在任何稳固的软件工程项目里 构建工具都是开发人员工具包里最重要的一个部件之一 没有一个可靠的构建工具 编译 包装和发布过程都会从复杂性和时间需求等方面影响实际的编程过程     用于Java开发人员的构建工具选择一直被局限于原有的基于UNIX的工具 例如Make Make及其开放源代码的派生工具能够完成任务 但是正式严肃的工作常常还是要依赖于调用UNIX或者Windows命令来完成 这就意味着 Java代码即使能够做到跨平台和编写一次就能各处使用 构建系统一般还是只能依赖于某种特定的平台     Java开发人员看到了这个问题 并意识到 通过提升Java平台的功能 他们能够创建一个更加强大的构建工具 这个工具是专门为Java程序人员设计的 而且不会依赖于任何特定的平台 这就是Ant 一个由Apache基金会的Jakarta项目所管理的项目     Ant的配置文件是用XML文档编写的 所以Java程序员应该已经很熟悉其的语法了 这同Make声名狼藉的不友好句法形成了鲜明的对比 更重要的是 构建系统用来构建项目的所有动作 也就是任务 也是用Java编写的 所以同样的构建文件能够被运行在任何可以使用Java编译器的地方 在Ant里 所有的东西都是独立自主的     在本文里 我们将看到如何安装Ant 如何创建用于构建项目的配置文件 以及如何使用可用的内置系统和条件任务      安装Ant    要开始的话 我们就需要先去Ant主页 它上面有最新的发行版本 在线使用手册和FAQ 在下载和安装Ant以前 你需要先安装Java开发工具包( 或更高版本) 需要设置JAVA_HOME环境变量 在你的可执行路径里还需要javac编译器     你可以从Jakata网站下载预编译的ANT 你还要用到可选的Java Archive(JAR)文件 其包含的任务能有助于与其他开发工具进行集成 Ant也是开放源代码软件 所以如果你想修改任何内部组件来使其适应于自己的开发环境 这没有问题 你要做的只是下载源代码 但是要注意的是 Ant灵活性极强 这一点我们会在下一篇文章里看到 向Ant添加功能是很容易的 而且不需要更改源代码     一旦下载完了二进制包 你只需要简单地把文件解压到希望安装Ant的地方 对于Windows系统 解压到c:\\ant\\ 在UNIX系统上 你可能希望安装到/usr/local/ant/或者/opt/ant/下     下一步 你需要设置自己的环境变量 即ANT_HOME 在Windows上 假如我们安装到c:\\ant目录下 图A所示的命令会正确地设置你的环境变量      >   >   设置Windows的环境变量    在UNIX系统上 假设我们安装在/usr/local/ant目录下 图B所示的命令会正确地设置你的环境变量      >   >   设置UNIX的环境变量    要在Windows或者UNIX系统上安装可选的任务 你需要把可选的jar文件复制到$ANT_HOME/lib/目录下 Ant或者ant bat脚本会自动地把jar文件追加到类的路径下     现在我们测试一下 确信Ant已经正确安装好了 在命令行下 输入ant 你应该会看到一条信息 见图C 说Ant无法定位Build xml文件 这正是我们所期望的 因为我们还要配置和创建项目文件      >   >   创建文件错误信息    既然Ant已经准备好了读取项目文件 就让我们看看项目文件是什么样的吧 创建项目     创建项目    为了让开发人员的日子更加好过一点 Ant的配置文件是使用XML文档编写的 这样开发人员不用去担心空白的问题(Makefiles就有这个问题) 而且许多开发人员都已经能够正确编写XML了     Ant一启动就会自动地加载一个叫做Build xml的项目配置文件 如果想给这个项目配置文件取别的名字 你可以使用buildfile标记来运行ant 就像下面这样     ant buildfile Project_configuration xml    在Listing A所示的SimpleBuild xml配置文件里 你会看到一个项目标签 它带有三个属性 名字 缺省值和basedir Ant使用说明里有Ant配置文件里每个标签的详细文档 你可能要使用Ant使用说明作为参考书来了解哪些是必需的标签 哪些有缺省值     在项目标签里 你会看到属性和目标标签 属性标签创建的变量能够被任务和变量扩展访问 正如我们在后面所要看到的一样 有一些变量 像日期和时间 能够在任务内部进行设置 所以不是所有的变量都会被明确地定义     在属性标签后面 你会看到目标标签 你可以定义多个目标 每一个都有不同的名字 你会注意到目标标签的名字是pile 这碰巧和项目标签里的缺省值相对应 这就意味着我们在执行Ant的时候 它会自动地启动pile目标     目标里有许多的任务 Ant按顺序来执行它们 你会发现构建 包装和发布过程中几乎每一件事都可以由Ant的任务来处理     在进行简单的构建时 我们使用tstamp任务来把当前的日期和时间设置到环境变量里 下一步 我们会使用mkdir任务来创建一个叫做$build的目录 (假设它并不存在 这是我们脚本里命令解释程序扩展的第一个例子 Ant会自动把 $build 扩展到属性构建所设置的值里 在这种情况下是build字符串 )    最后 我们会使用javac任务来编译来自src目录的源代码 并把输出保存到构建里     在运行Ant时 我们会让输出来显示每个目标执行的状态 如图D所示      >   >   Ant的输出    一个更加深入的例子    现在我们看看使用多个目标构建一个稍微复杂一点的配置的例子     在Listing B所示的Medium xml例子里 配置内容被分成的目标比SimpleBuild xml例子里的更多 把构建过程分成不同的目标意味着Ant可以从任何点进入构建过程 在SimpleBuild xml里 我们只用简单地编译Java源代码 但是 在这个例子里 我们启动环境(init) 编译代码(pile) 把代码包装进jar(package) 再把结果复制进产品所在的位置(dist) 我们还有一个在任何代码编译以前通过还原来清除环境的任务     在缺省状态下 我们会依次运行init pile package 然后是dist 你可以看到每个对象都有已定义的相依性 Ant在依赖相依性的目标完成以前就完成好相依性 缺省的目标是dist 所以在命令行运行ant会完成所有的任务     然而 我们可以通过在命令行指定用所希望的目标来执行所有步骤中的一部分 例如 我们可以只包装代码 而不发布它 把更大的项目分成多个目标能够允许开发人员迅速地进行分段构建 而不必等待完整构建 这会有助于调试和保证高质量的过程      内置的任务    既然你已经看过了如何创建一个项目文件 那我们就看一些内置的任务 你会希望看一下Ant的文档来获得任务的细节 因为那里所提供的信息比我们这里所涉及的要多      文件系统任务    你可能会经常使用Ant来完成系统任务 移动 修改 复制和删除文件 在发布和清除临时文件时 你会需要移动文件 这就是为什么懂得文件系统工具的使用是有必要的原因了     Listing C所示的Fs xml 例子 给filesystem回应了一条信息 @…@ 标志是Ant如何进行文本替换的标识 要替换文本就要在将被替换的文本前后加上 @ 标志 在信息被复制到磁盘以后 我们创建两个目录 复制文件 在我们复制的时候对磁盘上的文件进行标志替换 再删除一个已复制的文件 图E是在Fs xml构建文件上运行Ant的输出结果      >   >   Filesystem输出实例     使用条件    在Ant里构建条件不太容易 由于Ant构建任务和目标的方法 你不得不小心地构造你的陈述式 只有当属性被设置成真值的时候 条件才能通过执行对象来工作 你可以使用and or和not陈述式来构造你的条件 在一个条件被发现为真时 你可以使用antcall任务来执行另一个目标 让我们来看一个简单的例子 它会确定可选的声音任务是否可用 以及它是否在UNIX或者Windows上可用     在Listing D所示的SoundConditional的例子里 你会看到条件任务会调用两个条件陈述式 condWinSound和condUnixSound 但是两者都不会主动执行 除非条件属性被设置 条件目标会检查包装是否可用(这是可选的jar文件一部分) 以及在哪个平台上可用      包装    现在 你应该已经准备好开始把自己的软件项目转移到Ant构建工具上了 Ant正在越来越多地被开发人员用来支持大型的Java项目——而且是因为有了好的理由 这些工具是面向Java的 跨平台的 而且一般都比面向UNIX的工具要更容易使用 希望本文能够让你看到Ant的力量 也能有助于提高你所在组织的产出 在以后的文章里 我们会来看通过创建自己的任务如何来扩展Ant cha138/Article/program/Java/ky/201311/28307

相关参考

知识大全 如何安装配置Oracle 9i网络环境三(图)

如何安装配置Oracle9i网络环境三(图)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  > 

知识大全 java和ant在windows下的环境变量的配置方法

  以下设置WinXP及以上用户右键点击我的电脑>属性>高级>环境变量设置即可设置完成后需重新启动命令提示符才能生效具体如下  JAVA环境变量设置  Windows下JAVA用到的

知识大全 Ant的配置使用入门[1]

Ant的配置使用入门[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  &

知识大全 Ant的配置使用入门[3]

Ant的配置使用入门[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  &

知识大全 Ant的配置使用入门[2]

Ant的配置使用入门[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  &

知识大全 Eclipse中Ant的配置与测试

Eclipse中Ant的配置与测试  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  然后在Buil

知识大全 轻量级IoC容器来扩展ANT享受SPRING(图)

轻量级IoC容器来扩展ANT享受SPRING(图)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 Weblogic Server ant开发Web Service二(图)

WeblogicServerant开发WebService二(图)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一

知识大全 ant+cactus+tomcat5.5容器内单元测试

一下载并解压缩cactus下载地址为 将cactus的lib目录下的cactusantjar复制到ant的lib目录二配置cactuscactus的配置很简单新建一个cactusproper

知识大全 ant - java 构建工具 - hello ant

  管理你的代码doc文件编译配置等开发工作你是怎末做的自己管理源目录编译文件copy实施在window写bat在unix写shell?    可惜我不怎末会写所以我制作一个ejb的过程是这样的写代码