在JBuilder8中使用ANT
                                                            作者:翁驰原
    在JBuilder8中,Apache Ant的版本号已更新至1.5.1,提供了更强大的功能。什么是ANT呢?总的来说ANT是一种基于Java的build工具。关于build工具,我相信大家已经接触过非常多了,比方:make, gnumake, nmake, jam以及其它的build工具。那为什么要使用ANT呢?由于ANT是一种基于JAVA的跨平台的build工具。Ant用Java的类来扩展,(用户)不必编写shell命令,配置文件是基于XML的,通过读取的配置文件中定义的targets和tasks来运行任务。
    JBuilder能够自己主动识别名字为build.xml的ANT的build文件,在JBuilder里这个文件会显示成一个蚂蚁的图标。本文所使用的JBuilder版本号是JBuilder8,本文假定读者对JBuilder和Java有一定的了解。接下来让我们一步步的体验怎样在JBuilder里使用ANT吧。
1.建一个工程和应用程序
 打开JBuilder8,选择菜单File|New来打开新建面板。选择Project里面的Project,在Name栏里填写AntProject,以下的步骤跳过,直接按Finish完毕。再选择File|New在General面板里选择Application,接受默认的选项后按Finish结束。
2.建立ANT文件
  在JBuilder里选择Project|Add Files/Packages,选择左边的Explorer,选择AntProject工程的根文件夹,在File Name字段里填写build.xml后按OK后弹出一个提示问是否要创建,按下OK就创建了一个名为build.xml的文件。系统能自己主动识别它是ANT文件并显示成一个蚂蚁图标,假设你存成其它名字的.xml文件也希望JBuilder把它识别为ANT的build文件的话,在这个文件上点右键,选择Properties在ANT页里选择Ant Build File。打开刚才创建的build.xml文件在里面添加例如以下的内容后保存工程
<?xml version="1.0"?>
<!DOCTYPE project>
<project name="AntProject" default="dist" basedir=".">
<property name="src" value="src"/>
<property name="build" value="build"/>
<property name="dist" value="dist"/>

<target name="init">
<tstamp/>
<mkdir dir="${build}"/>
</target>

<target name="compile" depends="init"> 
<javac srcdir="${src}" destdir="${build}"/>
</target>

<target name="dist" depends="compile">
<mkdir dir="${dist}/lib"/>
<jar jarfile="${dist}/lib/MyProject-${DSTAMP}.jar" basedir="${build}"/>
</target>

<target name="clean">
<delete dir="${build}"/>
<delete dir="${dist}"/>
</target>

</project>
这里大致解释一下:先看第三行的project,每个build文件中都含有一个project,name是项目名称,default是指一个缺省的target,一个项目能够定义一个或多个target。运行Ant时,能够选择运行那个target。当没有给定target时,就会默认运行project的default属性所确定的target。basedir是指用来其它路径的基路径。接下?请看propertie属性,一个project能够有多个properties,有点像定义变量,property可用于task的属性值。

                             (图1)
假设设定了<property name="srcProperty" value="src"/> 那么当你以后使用"${ srcProperty }"的时候,实际的得到的值是src。以下是target,一个target能够依赖于其它的target。<target name="dist" depends="compile">这里dist是依赖于compile的,也就是说在运行dist的时候会先运行compile。还能够写if或者unless控制语句,比方:<target name="build-module-A" if="module-A-present"/>,假设没有if或unless属性,target总会被运行。以上的四个target分别实现了(1)创建一个build的文件夹(2)build文件(3)打包成.jar(4)清理工作——删除文件夹。
3.运行targets
    点击左上方的refreshbutton,Ant这个图标旁边会出现一个加号,以下会出现你所定义的那些targets。在init上点击右键,然后在谈出来的菜单上选择make(如图1所看到的),这样这个target就创建了一个名字叫build的文件夹。然后你能够在其它的traget上试试,看看运行效果。最后运行clean target清楚被创建的文件夹。也能够直接在build.xml上单击右键,点make,这样就会运行默认的target。由于dist是依赖于compile,而compile是依赖于init的,所以就会运行创建一个文件夹,再编译文件,最后打包的一系列的任务。
4.用Ant来处理错误
    打开Application1.java,凝视掉main方法——//public static void main(String[] args) 。右击build.xml选择make 编译,检查信息面板里的错误信息,当在错误信息上双击的时候,在程序面板会自己主动高亮度显示错误。把main方法前面的//去掉,以便继续以下的操作。

                                  (图2)
5.在project菜单里添加一个target
选择Project|Project Properties打开Project Properties面板后选择build页,然后再选择Menu Items页。在Menu Items页里点击Addbutton打开一个叫Add Build Target To Menu的窗体(如图2),选择须要的Ant Target(这里选择clean)后OK。在Menu Items面板里,你能够点击右边的Move Upbutton和Move Downbutton来调整Ant Target的位置,在这里把clean调整到第二个位置,点击OK关闭Project Properties面板。这时能够看见Project菜单下出现了一个clean的项,然后点击clean运行删除文件夹任务。
    
6.设置Ant属性
    右击build.xml后选择Properties。在谈出来的面板里选择Ant页后把Log Level设置成Verbose(如图3),这样在消息面板里能够提供更具体的消息。点击Properties右边的Addbutton,在弹出的窗体里的Name栏里选择build,并在以下的Value栏里输入test。点击两次OK关闭两个对话框。如今当运行编译任务时,Ant是创建一个test的文件夹把类文件放在这里,而不是之前的build文件夹。你能够试一下,右击compile target后点击make,细致看消息面板你会发现很多其它的信息,具体信息能够參考例如以下:

                                 (图3)

Ant
   StdOut
      Apache Ant version 1.5.1 compiled on October 2 2002
      Buildfile: build.xml
      Detected Java version: 1.4 in: H:/JBuilder7/jdk1.4/jre
      Detected OS: Windows 2000
      parsing buildfile build.xml with URI = file:I:/personal/project/j_project/jbuilder_torial/AntProject/build.xml
      Project base dir set to: I:/personal/project/j_project/jbuilder_torial/AntProject
      Override ignored for property build
      Build sequence for target `compile' is [init, compile]
      Complete build sequence is [init, compile, clean, dist]
      init:
      compile:
          [javac] antproject/Application1.java omitted as I:/personal/project/j_project/jbuilder_torial/AntProject/test/antproject/Application1.class is up to date.
          [javac] antproject/Frame1.java omitted as I:/personal/project/j_project/jbuilder_torial/AntProject/test/antproject/Frame1.class is up to date.
          [javac] antproject/Frame1.jbx skipped - don't know how to handle it
      BUILD SUCCESSFUL
      Total time: 1 second
接下来,首先选择Project|clean清除了文件夹后,我们来看看怎么设置在JBuilder编译的时候默认的使用Ant来编译。在AntProject.jpx上右击鼠标选择clean,这是用来删除JBuilder生成的类和类文件夹的。然后右击build.xml后选择Properties,选上Always Run Ant When Building Project这个选项后OK关闭这个对话框。如今,当选择Project |Make Project的时候,JBuilder自己主动调用Ant来运行编译任务。假设在编译的时候还须要其它的一些类库的话,比如你须要运行Java mail, 或JUnit測试,能够这样添加你所须要的类库:选择Project|Project Properties,在弹出的面板里选择Build页里的Ant页,在Ant页里按Add打开一个Select A Library dialog的窗体来添加你所须要的类库,假设这个窗体里没有所须要的类库的话,能够点左下角的newbutton来指定,点击OK后关闭窗体。能够按Move Up或Move Down来调整它们的查找类库的顺序。点击OK关闭Project Properties对话框。
    好了,到如今为止相信读者对Ant和它在JBuilder里的使用有了主要的了解了。假设想对Ant有很多其它的了解的话,请訪问:http://jakarta.apache.org/ant/manual/index.html。 

转载自:http://www.javaresearch.org/article/showarticle.jsp?column=23&thread=5365




在JBuilder8中使用ANT的更多相关文章

  1. 在JBuilder8在使用ANT

    在JBuilder8中使用ANT                                                            作者:翁驰原    在JBuilder8中.Ap ...

  2. 在Eclipse中集成Ant配置

    提要:本文将向你展示如何使用Eclipse设置为Ant所用的属性值和环境变量,并简要分析如何配置Ant编辑器以便从Eclipse内部操作Ant文件. 一. 修改Ant Classpath 在使用一个可 ...

  3. 在Android开发中使用Ant 一:环境的搭建及入门

    配置Ant环境 下载Ant:http://ant.apache.org/bindownload.cgi 在windows上应该选择zip压缩包,将zip压缩包解压到一个目录. 打开系统环境变量,在系统 ...

  4. Ant学习笔记(2) 在Eclipse中使用Ant

    Eclipse默认提供了对Ant的支持,在Eclipse中不需要安装任何插件就能直接编辑和运行Ant.Eclipse中包含了一个Ant脚本编辑器,Ant脚本编辑器提供了对Ant脚本的语法搞来高亮.自动 ...

  5. 在flash builder 4.6中使用ant编译项目的详细过程

    首先要准备APACHE ANT,目前是1.9.2版 可以去这里下载:http://ant.apache.org/bindownload.cgi?Preferred=http://labs.renren ...

  6. (转)Eclipse中使用Ant

    Eclipse中使用Ant 分类: JAVA 工具 服务器2014-08-05 09:59 5507人阅读 评论(0) 收藏 举报 anteclipse http://286.iteye.com/bl ...

  7. Gradle 1.12 翻译——第十七章. 从 Gradle 中调用 Ant

    有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com ...

  8. Android中利用ant进行多渠道循环批量打包

    公司负责Android开发的小伙伴学习能力稍微偏弱,交代给他的自动化打包的任务,弄了好久依然没有成效.无奈只好亲自出手. 没有想到过程很顺利,我完全按照如下文章的步骤进行: 主要参考: Android ...

  9. React中使用Ant Table组件

    一.Ant Design of React http://ant.design/docs/react/introduce 二.建立webpack工程 webpack+react demo下载 项目的启 ...

随机推荐

  1. 对于stackoverflow的中文翻译的相关问题

    我们非常多朋友都给我留言说.希望我翻译一下stackoverflow的问题以及答案,首先我也非常愿意为大家翻译,在能够帮助大家的同一时候,对我本人的技能的提升有优点:可是工作量实在太大,所以我不可能翻 ...

  2. poj3678(two-sat)

    传送门:Katu Puzzl 题意:n个点,点的取值可以是0或者1.m条边,有权值,有运算方式(并,或,异或),要求和这条边相连的两个点经过边上的运算后的结果是边的权值.问你有没有可能把每个点赋值满足 ...

  3. uva 1510 - Neon Sign(计数)

    题目链接:uva 1510 - Neon Sign 题目大意:给定n个点,随意三点不共线,而且两两点之间有一条线,给定线的颜色.问说有多少个三角形三边同色. 解题思路:对于每一个点.记录该点黑色边的数 ...

  4. Android基于发展Service音乐播放器

    这是一个基于Service组件的音乐播放器,程序的音乐将会由后台的Service组件负责播放,当后台的播放状态改变时,程序将会通过发送广播通知前台Activity更新界面:当用户单击前台Activit ...

  5. [置顶] C++学习书单

    关于C++的书太多了,很容易让人没有头绪.一直想整理下,把这些书列个书单出来,直到今天才动手.希望我的经验能给后来的初学者一点帮助. 1.<C++程序设计教程> 钱能 很多学校把这本书选做 ...

  6. linux LNMP自动安装脚本

    #!/bin/bashsoft_dir="/home/soft"config_dir="/home/config"httpd="httpd-2.0.5 ...

  7. MD5加密算法的实现

    //////////////////////////////////////////////////////////////////// /*                 md5.h        ...

  8. SVN的svnlook命令

    svnlook命令集(zhuanzai) 2011-12-08 17:00:30|  分类: System and CVS|字号 订阅     svnlook 名称 svnlook author — ...

  9. notepad扩展搜索,正则搜索

    Dos和windows采用回车+换行CR/LF表示下一行, 0d 0a 两个字节表示而UNIX/Linux采用’\n’换行符LF表示下一行(ASCII代码是10),0a一个字节表示MAC OS系统则采 ...

  10. cocos2d-x-3.0新建工程以及移植其他平台

    本文来自:http://www.zaojiahua.com/cocos2d-x-3-0.html 有将近俩个礼拜没有研究cocos2dx了,博主最近刷了些ACM的水题,越做感觉越没意思,这哪是考编程啊 ...