首页 »Java教程 » antbuild.xml:Java的Build工具—Ant应用指南(2) »正文
antbuild.xml:Java的Build工具—Ant应用指南(2)
来源: 发布时间:星期四, 2009年1月8日 浏览:39次 评论:0
基本应用 建立工程 ![](/icons/69426de.gif) 目录 ![](/icons/69426yi.gif) 般要根据工程 ![](/icons/69426de.gif) 实际情况来建立工程 ![](/icons/69426de.gif) 目录结构 ![](/icons/69426dou2.gif) 但是 ![](/icons/69426dou.gif) 有 ![](/icons/69426yi.gif) 些比较通用 ![](/icons/69426de.gif) 组织形式可供参考 ![](/icons/69426dou.gif) 比如所有 ![](/icons/69426de.gif) jakarta项目都使用类似 ![](/icons/69426de.gif) 目录结构 ![](/icons/69426dou2.gif) 下面让我们来看 ![](/icons/69426yi.gif) 下这种目录结构 ![](/icons/69426de.gif) 特点 ![](/icons/69426dou2.gif) 表1 目录 文件 bin 公共 ![](/icons/69426de.gif) 2进制文件 ![](/icons/69426dou.gif) 以及运行脚本 build 临时创建 ![](/icons/69426de.gif) 文件 ![](/icons/69426dou.gif) 如类文件等 dist 目标输出文件 ![](/icons/69426dou.gif) 如生成Jar文件等 doc/javadocs 文档 lib 需要导出 ![](/icons/69426de.gif) Java包 src 源文件 对于 ![](/icons/69426yi.gif) 个简单 ![](/icons/69426de.gif) 工程 ![](/icons/69426dou.gif) ![](/icons/69426yi.gif) 般包括表1 ![](/icons/69426de.gif) 几个目录 ![](/icons/69426dou2.gif) 其中bin、lib、doc和src目录需要在CVS ![](/icons/69426de.gif) 控制的下 ![](/icons/69426dou2.gif) 当然在这样 ![](/icons/69426de.gif) 目录结构上 ![](/icons/69426dou.gif) 也可以做 ![](/icons/69426yi.gif) 些调整 ![](/icons/69426dou.gif) 例如 ![](/icons/69426dou.gif) 可以建立 ![](/icons/69426yi.gif) 个extra目录来放置需要发布 ![](/icons/69426de.gif) Jar文件、Inf文件及图像文件等 ![](/icons/69426dou2.gif) 同样 ![](/icons/69426dou.gif) 如果开发Web应用可以建立 ![](/icons/69426yi.gif) 个Web目录放置JSP、HTML等文件 ![](/icons/69426dou2.gif) 如果我们开发 ![](/icons/69426de.gif) 是 ![](/icons/69426yi.gif) 个比较复杂 ![](/icons/69426de.gif) 项目 ![](/icons/69426dou.gif) 包括多个子项目 ![](/icons/69426dou.gif) 并且各个子项目是由区别 ![](/icons/69426de.gif) 开发人员来完成 ![](/icons/69426de.gif) ![](/icons/69426dou.gif) 那么要如何来设计它 ![](/icons/69426de.gif) 目录结构?首先有 ![](/icons/69426yi.gif) 点是需要确定 ![](/icons/69426de.gif) ![](/icons/69426dou.gif) 区别 ![](/icons/69426de.gif) 子项目应该拥有区别 ![](/icons/69426de.gif) Build文件 ![](/icons/69426dou.gif) 并且整个项目也应该有 ![](/icons/69426yi.gif) 个总 ![](/icons/69426de.gif) Build文件 ![](/icons/69426dou2.gif) 可以通过Ant任务或是AntCall任务 ![](/icons/69426diaoyong.gif) 子项目 ![](/icons/69426de.gif) Build文件 ![](/icons/69426dou.gif) 如下例: <target name="core" depends="init"> <ant dir="components" target="core"/> <ant dir="waf/src" target="core"/> <ant dir="apps" target="core"/> </target> 在各个子项目 ![](/icons/69426de.gif) 耦合不是非常紧密 ![](/icons/69426de.gif) 情况下 ![](/icons/69426dou.gif) 各个子项目应该有各自独立 ![](/icons/69426de.gif) 目录结构 ![](/icons/69426dou.gif) 也就是说它们可以有自己 ![](/icons/69426de.gif) src、doc、build、dist等目录及自己 ![](/icons/69426de.gif) build.XML文件 ![](/icons/69426dou.gif) 但是可以共享lib和bin目录 ![](/icons/69426dou2.gif) 而对于那些耦合紧密 ![](/icons/69426de.gif) 子项目 ![](/icons/69426dou.gif) 则推荐使用同 ![](/icons/69426yi.gif) 个src目录 ![](/icons/69426dou.gif) 但是区别 ![](/icons/69426de.gif) 子项目有区别 ![](/icons/69426de.gif) 子目录 ![](/icons/69426dou.gif) 各个子项目 ![](/icons/69426de.gif) build.xml文件可以放在根目录下 ![](/icons/69426dou.gif) 也可以移到各个子项目 ![](/icons/69426de.gif) 目录下 ![](/icons/69426dou2.gif) 编写Build文件 要用好Ant工具 ![](/icons/69426dou.gif) 关键是要编写 ![](/icons/69426yi.gif) 个build.xml文件 ![](/icons/69426dou2.gif) 要编写出 ![](/icons/69426yi.gif) 个结构良好、灵活可扩展 ![](/icons/69426de.gif) Build文件 ![](/icons/69426dou.gif) 有两个问题要考虑 ![](/icons/69426dou.gif) ![](/icons/69426yi.gif) 是了解Build文件 ![](/icons/69426de.gif) 基本结构 ![](/icons/69426dou.gif) 2是了解Ant定义 ![](/icons/69426de.gif) 大量任务 ![](/icons/69426dou2.gif) Ant ![](/icons/69426de.gif) Build文件是 ![](/icons/69426yi.gif) 个标准 ![](/icons/69426de.gif) XML文件 ![](/icons/69426dou.gif) 它包含 ![](/icons/69426yi.gif) 个根节点Project ![](/icons/69426dou.gif) 每个Project定义了至少 ![](/icons/69426yi.gif) 个或多个Target ![](/icons/69426dou.gif) 每个Target又是 ![](/icons/69426yi.gif) 系列Task ![](/icons/69426de.gif) 集合 ![](/icons/69426dou2.gif) 它们的间 ![](/icons/69426de.gif) 关系如图2所示 ![](/icons/69426dou2.gif) ![](http://www.crazycoder.cn/WebFiles/20091/9a4423cc-d087-4398-8fa3-41032251635a.g<img src='/icons/69426if.gif' />) </hello> </target>
相关文章
读者评论
发表评论
|
|