您在典型的ant构建文件中有哪些默认目标?

时间:2010-04-06 08:51:08

标签: ant build-process build version-control

您是否有一些预定义的目标集,您创建的所有build.xml个文件都包含这些目标? 例如,许多蚂蚁手册都提出了以下目标列表:

  • 初始化
  • 清洁
  • 编译
  • 构建
  • 测试
  • 的Javadoc
  • DIST
  • 部署
  • web应用

您生命中遇到的最大的构建文件是什么?它有多少目标,它们是什么?您多久需要一组预定义的目标?

目标是开发一些约定,以便为任何具有类似maven方法概念的项目提供标准构建文件模板(当大量工作在封面下进行时,约定优于配置)。如果您知道可以找到不同构建文件集合的地方,或者从中获取灵感,那就太棒了。

2 个答案:

答案 0 :(得分:2)

我也在所有ant文件中使用这些目标

  • 初始化
  • 清洁
  • 编译
  • build
  • 测试
  • 的Javadoc

构建目标总是创造出人工制品,无论是罐子,战争还是战争。

您还应该在约定中包含结构化内容,例如所有库的共享存储库(由某些VCS版本化)。 另一件事是为您的jar版本定义属性,例如:

lib.commons-collections=commons-collections-2.1.jar
lib.commons-io=commons-io-1.4.jar

在所有ant文件中引用,common.jar是放置工件的地方,以防其他项目依赖它们。

<path id="local-cp">
    <pathelement path="${dir.common.jar}/${lib.shared}" />
    <pathelement path="${dir.lib}/${lib.commons-logging}" />
    <pathelement path="${dir.lib}/${lib.commons-io}" />
...

对于部署,我使用另一组ant文件deploy_ component-name .xml 经过多年的蚂蚁我会建议限制目标的数量,有时你可能会有更多的代码生成步骤等。

要了解其他人如何处理更大的项目,您可以下载应用程序服务器的源代码分发,以检查他们如何完成这项工作。

答案 1 :(得分:0)

  • int
  • 构建
  • 部署
  • 清洁
  • 测试