Eclipse快速上手指南之使用ANT

转载 2006年05月29日 12:40:00

Ant是Java平台下非常棒的批处理命令执行程序,能非常方便地自动完成编译,测试,打包,部署等等一系列任务,大大提高开发效率。如果你现在还没有开始使用Ant,那就要赶快开始学习使用,使自己的开发水平上一个新台阶。
  
  Eclipse中已经集成了Ant,我们可以直接在Eclipse中运行Ant。
  
  以前面建立的Hello工程为例,创建以下目录结构:

新建一个build.xml,放在工程根目录下。build.xml定义了Ant要执行的批处理命令。虽然Ant也可以使用其它文件名,但是遵循标准能更使开发更规范,同时易于与别人交流。
  
  通常,src存放Java源文件,classes存放编译后的class文件,lib存放编译和运行用到的所有jar文件,web存放JSP等web文件,dist存放打包后的jar文件,doc存放API文档。
  
  然后在根目录下创建build.xml文件,输入以下内容:
  
  <?xml version="1.0"?>
  <project name="Hello world" default="doc">
  
  <!-- properies -->
  <property name="src.dir" value="src" />
  <property name="report.dir" value="report" />
  <property name="classes.dir" value="classes" />
  <property name="lib.dir" value="lib" />
  <property name="dist.dir" value="dist" />
  <property name="doc.dir" value="doc"/>
  
  <!-- 定义classpath -->
  <path id="master-classpath">
  <fileset file="${lib.dir}/*.jar" />
  <pathelement path="${classes.dir}"/>
  </path>
  
  <!-- 初始化任务 -->
  <target name="init">
  </target>
  
  <!-- 编译 -->
  <target name="compile" depends="init" description="compile the source files">
  <mkdir dir="${classes.dir}"/>
  <javac srcdir="${src.dir}" destdir="${classes.dir}" target="1.4">
  <classpath refid="master-classpath"/>
  </javac>
  </target>
  
  <!-- 测试 -->
  <target name="test" depends="compile" description="run junit test">
  <mkdir dir="${report.dir}"/>
  <junit printsummary="on"
  haltonfailure="false"
  failureproperty="tests.failed"
  showoutput="true">
  <classpath refid="master-classpath" />
  <formatter type="plain"/>
  <batchtest todir="${report.dir}">
  <fileset dir="${classes.dir}">
  <include name="**/*Test.*"/>
  </fileset>
  </batchtest>
  </junit>
  <fail if="tests.failed">
  ***********************************************************
  **** One or more tests failed! Check the output ... ****
  ***********************************************************
  </fail>
  </target>
  
  <!-- 打包成jar -->
  <target name="pack" depends="test" description="make .jar file">
  <mkdir dir="${dist.dir}" />
  <jar destfile="${dist.dir}/hello.jar" basedir="${classes.dir}">
  <exclude name="**/*Test.*" />
  <exclude name="**/Test*.*" />
  </jar>
  </target>
  
  <!-- 输出api文档 -->
  <target name="doc" depends="pack" description="create api doc">
  <mkdir dir="${doc.dir}" />
  <javadoc destdir="${doc.dir}"
  author="true"
  version="true"
  use="true"
  windowtitle="Test API">
  <packageset dir="${src.dir}" defaultexcludes="yes">
  <include name="example/**" />
  </packageset>
  <doctitle><![CDATA[<h1>Hello, test</h1>]]></doctitle>
  <bottom><![CDATA[<i>All Rights Reserved.</i>]]></bottom>
  <tag name="todo" scope="all" description="To do:" />
  </javadoc>
  </target>
  </project>
  
  以上xml依次定义了init(初始化),compile(编译),test(测试),doc(生成文档),pack(打包)任务,可以作为模板。
  
  选中Hello工程,然后选择“Project”,“Properties”,“Builders”,“New…”,选择“Ant Build”:


  填入Name:Ant_Builder;Buildfile:build.xml;Base Directory:${workspace_loc:/Hello}(按“Browse Workspace”选择工程根目录),由于用到了junit.jar包,搜索Eclipse目录,找到junit.jar,把它复制到Hello/lib目录下,并添加到Ant的Classpath中:

  然后在Builder面板中钩上Ant_Build,去掉Java Builder:

 再次编译,即可在控制台看到Ant的输出:
  
  Buildfile: F:/eclipse-projects/Hello/build.xml
  
  init:
  
  compile:
  [mkdir] Created dir: F:/eclipse-projects/Hello/classes
  [javac] Compiling 2 source files to F:/eclipse-projects/Hello/classes
  
  test:
  [mkdir] Created dir: F:/eclipse-projects/Hello/report
  [junit] Running example.HelloTest
  [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.02 sec
  
  pack:
  [mkdir] Created dir: F:/eclipse-projects/Hello/dist
  [jar] Building jar: F:/eclipse-projects/Hello/dist/hello.jar
  
  doc:
  [mkdir] Created dir: F:/eclipse-projects/Hello/doc
  [javadoc] Generating Javadoc
  [javadoc] Javadoc execution
  [javadoc] Loading source files for package example...
  [javadoc] Constructing Javadoc information...
  [javadoc] Standard Doclet version 1.4.2_04
  [javadoc] Building tree for all the packages and classes...
  [javadoc] Building index for all the packages and classes...
  [javadoc] Building index for all classes...
  [javadoc] Generating F:/eclipse-projects/Hello/doc/stylesheet.css...
  [javadoc] Note: Custom tags that could override future standard tags: @todo. To avoid potential overrides, use at least one period character (.) in custom tag names.
  [javadoc] Note: Custom tags that were not seen: @todo
  BUILD SUCCESSFUL
  Total time: 11 seconds
  
  Ant依次执行初始化,编译,测试,打包,生成API文档一系列任务,极大地提高了开发效率。将来开发J2EE项目时,还可加入部署等任务。并且,即使脱离了Eclipse环境,只要正确安装了Ant,配置好环境变量ANT_HOME=<Ant解压目录>,Path=…;%ANT_HOME%/bin,在命令行提示符下切换到Hello目录,简单地键入ant即可。

 

转自:http://java.chinaitlab.com/Eclipse/27411.html

关于APP的新手指南

最近公司的APP要做新手指南,用于指引用户如何使用APP,于是我就是在网上查找了一些APP的新手指南都是怎么做的,以什么形式做的。 查找时才发现,公司的那种以一个H5静态页来做类似于说明书的想法真是...
  • dongyang0311
  • dongyang0311
  • 2016年06月14日 08:45
  • 830

密码学C语言函数库——Miracl库快速上手中文指南(VC)

一、简介 密码学学习、研究人员往往着重于理论研究,难以与实践直接挂钩,今天介绍一下国外著名密码学C语言函数库——Miracl库的使用方法。 Miracl库的官方网站是http://www....
  • shuilan0066
  • shuilan0066
  • 2013年01月19日 15:48
  • 3703

JSON快速入门指南

本文从JSON定义、语法规则及JSON解析与序列化等方面对JSON数据格式进行简要的使用说明,并重点阐述对JSON.parse()和JSON.stringify()方法的使用。...
  • hwhsong
  • hwhsong
  • 2016年04月22日 18:46
  • 1068

有了Eclipse为何用Ant

总有那么一批人认为IDE是无比强大的,比如Eclipse,或者更强大的MyEclipse(你是不是在用破解版本?)。Eclipse的确非常、非常、非常的优秀,它能帮你自动编译、帮你执行单元测试、帮你重...
  • ricefcc
  • ricefcc
  • 2015年02月03日 23:14
  • 1643

JavaScript快速上手——基础篇

背景ECMAScript是JavaScript的官方命名。因为Java已经是一个商标(它的原始持有者是Sun,现在是Oracle),所以它不得不准备一个新的名字。如今,一些早期收过授权的公司,如Moz...
  • qq_22329521
  • qq_22329521
  • 2016年10月07日 01:52
  • 670

Spark-快速上手

快速上手Spark 的交互式 shell( 用 Python 或Scala) 介 绍 它的 API 。当演示如何在 Java, Scala 和 Python 写独立的程序 时 ,看 ...
  • youdianjinjin
  • youdianjinjin
  • 2016年04月21日 22:28
  • 2406

用Ant实现Java项目的自动构建和部署/Eclipse下使用Ant

转载处:http://www.blogjava.net/amigoxie/archive/2007/11/09/159413.html
  • qq_17438907
  • qq_17438907
  • 2014年12月26日 18:06
  • 869

Python快速上手(二)

Python和很多其他语言一样有自己的bi
  • u013045971
  • u013045971
  • 2014年10月25日 11:39
  • 1217

eclipse中构建ant项目和编译运行ant

1、用 Ant 来构建简单系统 新建一个 Java project, 命名为 ant_project 图 1. 新建 ant_project 项目 然后新建一个 HelloWorld 类,我们...
  • qing419925094
  • qing419925094
  • 2015年01月21日 14:28
  • 6401

python编程快速上手--重点整理(下)

第十二章--处理excel电子表格(P218) 主要是学习openpyxl模块,因为书本上是2.1版本的,但是现在已经更新到了2.5版本了,期间还是有很多不一样的地方,可以学习openpyxl的文档。...
  • Lin_disguiser
  • Lin_disguiser
  • 2017年07月10日 21:24
  • 901
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Eclipse快速上手指南之使用ANT
举报原因:
原因补充:

(最多只允许输入30个字)