Ant在Eclipse中的应用.doc_第1页
Ant在Eclipse中的应用.doc_第2页
Ant在Eclipse中的应用.doc_第3页
Ant在Eclipse中的应用.doc_第4页
Ant在Eclipse中的应用.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

7 Ant(蚂蚁搬家)在Eclipse中的应用作为一个开源的开发框架,Eclipse与插件的完美结合使其功能日趋强大,它不仅集成了测试工具JUnit,而且集成了编译部署工具Ant,这使得在Eclipse中,开发者对项目的管理变得相对简单。本章主要介绍Ant的基础知识以及如何在Eclipse中使用Ant插件。7.1 Ant简介对于一个庞大的项目,每次都要重新编译、打包、测试和部署,这些操重复繁琐。C语言可以借助make脚本来使这些工作批完成,但是make的缺陷在于它与平台相关,对于与平台无关的Java应用无能为力。 Ant的出现解决了这个问题。Ant本身是一个流程脚本引擎,用于自动调用程序完成项目的编译、打包、测试和部署等操作。此外,Ant脚本的语法格式是基于XML的,通常构建文件默认的文件名为build.xml。build.xml文件将一组需要执行的目标组织在一起,每个目标都可能依赖于其他目标。每个目标可以包含任意数的Ant任务,Ant有很多内置任务,可以完成诸如编译、打包、生成文档、操作文件和目录等任务。每个build.xml文件都有一个默认执行的目标。Ant的优点大致如下。 (1)使用方便,操简单。Ant由一些内置任务和可选择的任务组成,还可以编写自己的目标任务。构建文件采用XML语法格式,容易书写,结构清晰。 (2)可集成性。Ant可以集成到很多集成开发环境中,Eclipse当然也不例外。 (3)跨平台性。Ant是采用Java开发的,具有很好的跨平台性。 (4)开源性。Ant是Apache软件基金会Jakarta项目的一个子项目,本身是开源的,可以方便地下载使用,还可以不断地完善。7.2 Ant的安装与配置 Ant是一个开源软件,其安装与配置难度并不大,在这里分几个小节简要说明。7.2.1获取Ant Ant包括二进制版本和源代码版本。Ant的安装文件可以直接从Apache的网站下载。目前Ant的最新的版本是Ant1.6.2,下载的文件一般以压缩格式存放。如果下载的是源代码版本,首先要把它编译成二进制版本。7.2.2安装Ant (1)将下载压缩包单独解压到磁盘,如D:ant1.6.2。 (2)在运行Ant之前要先设好环境变,不同的操系统配置环境变的方法不同。先介绍Windows系统的配置过程。以WindowsXP为例,首先右键点击【我的电脑】,在弹出菜单中选择【属性】,选中【高级】选项卡,再点击【环境变】按钮,出现“环境变设置”对话框。点击【新建】按钮,在弹出的【新建用户变】对话框里的填入值。【变名】填入ANT_HOME,【变值】填入D:ant1.6.2。然后编辑环境变path,在【变值】中添加D:ant_1.6.2bin。最后编辑环境变classpath,在【变值】中添加D:ant1.6.2bin。在Linux系统中设定环境变的方法如下。用root用户登录,用vi编辑器修改root目录下的“.bash_profile”属性文件,假设Ant安装在/user/local/ant目录下,要在文件的最后加上exportANT_HOME=/user/local/ant”和“exportPATH=$PATH:$ANT_HOME/bin”。注意修改环境变量后需要重启计算机或者切换用户。7.2.3运行Ant 一般需要在工程的根目录下编写一个build.xml文件,作为Ant执行的脚本,这样整个工程就可以根据这个脚本来执行编译、打包、测试和部署这些繁杂的工了。运行Ant比较简单,要打开DOS环境,在提示符后输入“ant”命令,回车,如果没有出现非法命令的提示,说明Ant运行成功。 没有指定任何参数时,Ant会在当前目录下查询build.xml文件。如果找到了,就用该文件作为buildfile。如果找不到,会提示出错。用-find选项可以使Ant在上级目录中寻找buildfile,直至到达根目录。要想让Ant使用其他的buildfile,可以用参数-buildfilefilename,这里filename指定了要使用的buildfile的名字。 运行时命令行可以指定执行一个或多个目标。当省略目标时,Ant使用标签的Default属性所指定的目标。 7.2.4Ant运行时的命令行参数 Ant运行时其命令行可以指定一些参数,常用的参数如表7-1所示。下面来举例说明几个带参数的命令的用。(1)ant:使用当前目录下的build.xml运行Ant,执行缺省的目标。(2)ant-buildfiletest.xml:使用当前目录下的test.xml运行Ant,执行缺省的目标。(3)ant-buildfiletest.xmldist:使用当前目录下的test.xml运行Ant,执行名为dist的目标。7.3 Ant构建文件的语法 当开始一个新项目时,应当首先编写Ant构建文件。构建文件定义构建的过程,并可以被开发团队中的每个开发人员使用。7.3.1 Ant构建文件的目录结构 默认的Ant构建文件通常为build.xml,此构建文件可以放在任何位置。但是普遍的做法是将其放在项目的顶层目录中,这样可以保持项目的简洁和清晰。下面是一个典型的目录层次。【根目录】|Build.xml+-src用于存放源文件+-classes用于存放编译后的.class文件+-dist由build任务生成,用于代码的打包、发布+-doc存放生成的API文档7.3.2 Ant构建文件的结构Ant构建文件是XML格式的,每个文件都有一个根标签(项目),在每个项目下可以定义一个或多个target目标),一个目标可能会依赖于其他目标。当执行的类依赖其他目标时,它所依赖的目标会先执行。在目标中可以定义多个任务,目标定义了所要执行的任务序列,Ant构建目标时,需要调用所定义的任务。任务定义了Ant实际执行的命令。Ant中任务分如下3类。(1)核心任务。核心任务是Ant自带的任务。(2)可选任务。可选任务来自第三方,下载Ant的同时可以下载可选包。目前,包含可选任务的JAR文件为jakarta-ant-1.6.2-optional.jar。将这个JAR文件放到Ant安装目录的lib目录下,Ant就加入了对可选任务的支持。(3)用户自定义的任务。用户自定义的任务是用户自己开发的任务。7.3.3一个构建文件的实例下面来看一个构建文件的实例,大致了解一下Ant构建文件的基本结构。【实例7-1】example.xml7.3.4构建文件的XML标记1每个构建文件对应一个项目,标记是构建文件的根标记。其属性如表7-2所示。标记的具体使用可以参照如下代码段。2一个项目标记下可以包含一个或多个target,一个target可以依赖于其他的target。例如,在一个构建文件中可能会有一个target用于编译,另一个target用于生成可执行文件;在生成可执行文件之前必须先编译通过,因此生成可执行文件的target依赖于执行编译target。Ant会依照depends属性中target出现的顺序(从左到右)依次执行每个target。看下面的例子:假定要执行targetD,从它的依赖属性来看,可能认为先执行C,然后B,最后执行A。其实不然,由于C依赖于B,B依赖于A,所以会先执行A,然后是B、C,最后执行D。但是,一个target能被执行一次,即使有多个target依赖于它。-注意Ant的depends属性只是制定了target应该执行的顺序,但是如果被依赖的target无法执行,这种depends对于指定了依赖关系的target就没有任何影响。-此外,标记还具有if和unless属性,利用这两个属性可以更好地控制构建过程。以下两行代码根据if或unless的判断有选择地执行target。如果没有if或unless属性,target总会被执行。description属性可用来提供关于target的描述,同的“description”属性一样,描述信息可由-projecthelp命令行选项输出。标记的属性如表7-3所示。标记具体使用可以参照如下代码段。3一个project可以有很多的property,可以在构建文件中使用Ant的内置属性标记property来设定。一个property包含一个名字/值对。name表示属性名,value表示属性值。标记的具体使用可参照如下代码。属性的引用可以通过将属性名放在“$”之间实现。例如上面的代码中的属性class.dir可通过$classes.dir来引用,在使用时被解析为classes。Ant预定义的属性有:java.class.pat、,os.version、、user.home、ant.version、ant.file和等。4标记用于将消息写到System.out,书写的方式有以下两种。ItsmyfirstAntbuildfile标记的属性如表7-4所示。10标记用来删除一个文件或者一组文件,具体使用参照如下代码。标记的属性如表7-9所示。7.4创建并运行Ant构建文件正如将测试工具JUnit集成到Eclipse一样,Eclipse框架也事先将编译部署工具Ant和IDE进行了无缝整合,因此可以在Eclipse环境下直接创建并运行Ant构建文件,使用扩展点添加新的Ant任务和类型而无须另行安装和配置Ant。下面将通过一个实例来详细说明在Eclipse中如何使用Ant插件来创建Ant构建文件,以及如何运行创建好的Ant构建文件。7.4.1创建Ant构建文件首先创建一个项目,项目名为Chapter07。Ant构建文件其实就是文本文件,要在Eclipse中创建一个构建文件,具体步骤如下。(1)选中项目名右键单击,在出现的弹出菜单中选择【新建文件】,如图7-1所示。(2)选择父文件夹,在这里选择Chapter07。在下面【文件名】条目中输入文件名,文件的扩展名应为.xml,如填入“StudentInformation.xml”。单击【完成】,Ant构建文件创建完成,如图7-2所示。7.4.2编辑Ant构建文件因为Ant构建文件是简单的文本文件,所以可以使用任何文本编辑器来编辑它们。但是使用EclipseAnt编辑器有几个优点(包括语法着色、内容辅助和大纲视图)。为使读者熟悉EclipseAnt编辑器,下面将使用此编辑器来创建一个简单的Ant构建文件。(1)选择菜单栏【窗口首选项】打开【首选项】窗口,展开【工台】条目的树形结构,点击【文件关联】,在右面【文件类型】窗口中选择“*.xml”条目。如果文件类型选择列表中没有此文件类型,则需要点击列表右边的按钮【添加(A)】,添加一个“*.xml”文件类型,如图7-3所示。(2)选中“*.xml”文件类型后,点击【相关联的编辑器】右边的按钮【添加(D)】,出现“选择编辑器”窗口,选中第一个“Ant编辑器”,点击【确定】,如图7-4所示。(3)添加Ant编辑器之后,“相关联的编辑器”处会出现“Ant编辑器(缺省值)”条目,如图7-5所示。注意由于*.xml文件的缺省编辑器是一个简单的文本编辑器,要使用Ant编辑器,需要在【窗口选项工作台文件关联】更改缺省设置。(4)右键单击生成的StudentInformation.xml文件,选择【打开方式】菜单项,可以看到刚才添加的Ant编辑器,选中它,就可以使用Ant编辑器编辑刚才建立的StudentInformation.xml文件,如图7-6所示。(5)在编辑器窗口中输入下面的程序段。【实例7-2】StudentInformation.xml$StudentNumber$StudentName在Ant编辑器中可以看到StudentInformation.xml文件的语法着色情况,如图7-7所示。此外,Ant编辑器编辑构建文件时支持语法自动完成,给使用者提供了便利。7.4.3使用Ant视图编辑构建文件时,Eclipse默认打开的视图是大纲视图,对于文件StudentInformation.xml,视图中列出了构建文件的项目属性(property)和包括的目标(target)。它的大纲视图如图7-8所示。此外,Eclipse还提供支持使用Ant构建文件的标准视图(Ant视图)。此视图也是树形结构,将Ant构建文件作为顶级条目显示,而目标和内部目标则作为子条目。此视图的主要优点在于视图可以集中所有Ant构建文件,并在同一个位置操作它们。下面来看一下Ant视图的使用。(1)在菜单栏选择【窗口显示视图Ant】来打开Ant视图,Ant视图将与大纲视图出现在同一面板上,如图7-9所示。(2)缺省情况下,Ant视图为空。单击Ant视图上方的【添加构建文件】按钮,出现【选择构建文件】对话框,在左边栏里选择“Chapter07”文件,在右边栏里选中“Student-nformation.xml”文件,点击【确定】按钮,可以将构建文件添加进Ant视图,如图7-10所示。(3)展开顶级条目可查看缺省目标PrintNumber和内部目标PrintName,如图7-11所示。(4)选择一个目标,缺省目标PrintNumber或内部目标PrintName,点击视图上部的(运行所选中的目标)按钮,可以执行选中目标。(5)选中一个构建文件,点击视图上部的(除去选择的构建文件)按钮,可以删除当前选中的构建文件。7.4.4运行Ant构建文件带有.xml扩展名的任何文件都可作为Ant构建文件运行。当然,并非所有这种文件都是真正的Ant构建文件。但是,如果错误地将非构建文件的.xml文件作为Ant构建文件运行,也不会产生不良后果。下面就来看一下运行刚编辑好的构建文件的步骤。(1)右键单击构建文件,在弹出菜单中选择【运行外部工具】,如图7-12所示。(2)点击菜单项【外部工具】以后,会出现【外部工具】对话框,此对话框负责创建和管理Ant构建文件的运行配置。选择【目标】选项卡,将两个目标复选框都选中,然后点击【运行】按钮。如图7-13所示。(3)Ant构建文件开始运行,同时将输出信息发送至控制台,运行结果如图7-14所示。7.4.5保存和重用Ant选项当运行StudentInformation.xml构建文件时,将目标的选项以及“运行Ant”对话框中的所有其他选项都保存在称为“启动配置”的实体中。启动配置包含按特定方式运行单个Ant构建文件所必需的所有详细信息。具有与单个Ant构建文件相关联的多个启动配置是完全有效的。因此,除了在上一步骤中创建的启动配置之外(即指定StudentInformation.xml构建文件应以该顺序执行目标PrintNumber和PrintName),还可以为同一个构建文件创建第二个启动配置(指定相同的目标但是按相反的顺序执行两个目标)。下面就来看一下为构建文件StudentInformation.xml创建两个启动配置的步骤。(1)选择菜单栏的【运行】,在下拉菜单中选择【外部工具外部工具】,如图7-15所示。(2)点击【外部工具】菜单项之后,【外部工具】对话框会打开并显示启动配置的选项以供查看和编辑。在左边的树中选择运行StudentInformation.xml构建文件时创建的启动配置,则右边的选项卡显示此启动配置的诸多选项。选中左边的构建文件后,右边的【名称】条目显示为“Chapter07StuentInformation.xml”,可以将名称改为“StuentInformation.xml”,点击【应用】按钮,则构建文件名称就改为StuentInformation.xml”,左边树中的名称也会发生相应变化,如图7-16所示。(3)在左边树中选中构建文件“StuentInformation.xml”,点击右键,选中【复制】条目,这样就创建了“StuentInformation.xml”构建文件的启动配置的副本,按照步骤(2)的方法将副本名称改为“StuentInformation.xml2”。然后点选右边树中的【目标】选项卡,如图7-17所示。(4)点击上图右下角的【顺序】按钮,可以改变目标的执行顺序,如图7-18所示。(5)点击【顺序目标】对话框右边的【下移】按钮,改变两个目标的执行顺序,然后点击【确定】按钮关闭此对话框。这样就改变了构建文件的副本启动配置,点击【运行】按钮,7.4.5保存和重用Ant选项当运行StudentInformation.xml构建文件时,将目标的选项以及“运行Ant”对话框中的所有其他选项都保存在称为“启动配置”的实体中。启动配置包含按特定方式运行单个Ant构建文件所必需的所有详细信息。具有与单个Ant构建文件相关联的多个启动配置是完全有效的。因此,除了在上一步骤中创建的启动配置之外(即指定StudentInformation.xml构建文件应以该顺序执行目标PrintNumber和PrintName),还可以为同一个构建文件创建第二个启动配置(指定相同的目标但是按相反的顺序执行两个目标)。下面就来看一下为构建文件StudentInformation.xml创建两个启动配置的步骤。(1)选择菜单栏的【运行】,在下拉菜单中选择【外部工具外部工具】,如图7-15所示开始运行Ant构建文件,构建文件会根据新的启动配置运行。运行结果如图7-19所示。由上图可以看到,两个目标运行的顺序改变了,PrintName先运行,PrintNumber后运行。启动配置真正的好处在于:通过简单地指定相应的启动配置就可以实现在任一配置中快运行Ant构建文件。构建好启动配置以后,可以在工具栏快运行已经设置好启动配置的Ant构建文件,如图7-20所示。 7.5创建并运行项目构建器可以创建一个Ant构建文件,并指定它在每次构建项目时运行。这种构建文件可以自动调用程序完成项目的编译,打包,测试,部署等操作,还可以对项目中的源或二进制文件执行某些类型的构建前或构建后处理。我们通常称其为项目构建器。项目构建器的一大优点是其对所有项目都可用。7.5.1创建与配置项目构建器下面通过一个简单的例子介绍项目构建器的创建与配置。(1)为上一节创建的项目Chapter07加入类文件Student.java。为方便起见,将使用将前一章介绍的Student.java文件,在这里做一些改动。修改后的Student类如下。【实例7-3】Student类(Student.java)packagecom.example.eclipse.java;importjava.util.ArrayList;publicclassStudentprivateintnumber;privateStringname;privateArrayListscores;publicStudent(intaNumber,StringaName)number=aNumber;name=aName;/*returnscoresAnArrayListconsistofthescoresofastudent*Initthescoresofastudent*/publicArrayListinitScores()scores=newArrayList();scores.add(newFloat(90.0);scores.add(newFloat(95.0);scores.add(newFloat(99.5);returnscores;/*paramaNumberthenumbertoset*returnbooleannumber*Whensucessfullysetnumber,returntrue,elsereturnfalse*/publicbooleansetNumber(intaNumber)if(aNumber1000)returnfalse;number=aNumber;returntrue;/*paramaNamethenametoset*returnvoid*Setnameofastudent*/publicvoidsetName(StringaName)name=aName;/*returnnameofthestudent*/publicintgetNumber()returnnumber;/*returnnumberofthestudent*/publicStringgetName()returnname;publicstaticvoidmain(Stringargs)Studentstudent1=newStudent(100,liyinghao);intnumber;Stringname;number=student1.getNumber();name=student1.getName();System.out.println(Thenumberofstudent1is:+number);System.out.println(Thenameofstudent1is:+name);(2)依照前一节的方法创建名为projectBuilder.xml的构建文件,用Ant编辑器编辑,在其中输入如下内容并保存所做更改。【实例7-4】projectBuilder.xmlcreatedirectorysinuseofbuildingprocess/compilesthesourcecode/generatesthejarfile/generatestheAPIdocumentation/cleansupthedirectory/(3)选中项目Chapter07,右键点击,在弹出菜单中选择【属性】菜单项,弹出【项目属性】对话框,如图7-21所示。(4)在弹出的【项目属性】对话框中选中左边栏中的【构建器】条目,然后单击右边的【新建】按钮,出现【选择配置类型】对话框,如图7-22所示。(5)在【选择配置类型】对话框中有两个选项,如图7-23所示,选择第一个【Ant构建】,单击【确定】,出现【编辑启动配置】对话框。(6)在【编辑启动配置】对话框中将【名称】项修改为“ProjectBuilder”,点选【主要】选项卡下的【构建文件】项下面的【浏览工作空间】按钮,在出现的【选择构建文件】对话框中选择“projectBuilder.xml”文件,如图7-24所示,点击【确定】。按同样方式设置【基本目录】项为“Chapter07”,如图7-25所示。(7)选中【刷新】选项卡,将复选框【完成时刷新资源】选中,在下面的单选按钮中选择【包含所选资源的项目】,如图7-26所示。(-8)选中【构建选项】选项卡,将【在“清除”之后】和【在手工构建期间】两个复选框选中。默认情况下这两个复选框处于选中状态,如图7-27所示。也可以使项目构建器自动运行,但是出于系统执行效率的考虑并不推荐这样做。-(9)上述几个步骤都做好以后,点击【应用】按钮,并点击【确定】。此时【项目属性】对话框中会出现新的项目构建器“ProjectBuilder”,如图7-28所示。点击【确定】按钮,完成项目构建文件的创建与配置工作。7.5.2运行项目

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论