【问题标题】:Building along with Project Dependencies in Ant与 Ant 中的项目依赖一起构建
【发布时间】:2011-08-15 23:12:03
【问题描述】:

我有一个 Java 项目,它依赖于其他同级 Java 项目,并且有一个依赖链。每个单独的项目都有一个用 Ant 编写的构建脚本。为了清楚起见,请在下面找到相同的示例。

  1. EARProject 依赖于WebProjectEJBProject:需要WebProject 构建生成的war 文件和EJBProject 生成的jar 文件来构建EARProject

  2. WebProject 依赖于ComponentOneProjectComponentOneProject 构建生成的jar 文件是构建WebProject 所必需的。

  3. EJBProject 依赖于ComponentTwoProject:构建ComponentTwoProject 需要jar 文件来构建EJBProject

所以,当我构建 EARProject 构建时,如果依赖的 warjar 尚未构建,那么它应该启动 WebProject 构建和 EJBProject 构建,如果 @ 987654344@ 尚未构建,ComponentOneProject 的构建需要启动等等。

有人能推荐一个干净的方法来完成这个吗?

【问题讨论】:

    标签: ant build dependencies


    【解决方案1】:

    面对同样的问题,我们公司编写了一个自定义 Groovy 脚本,该脚本探索了完整的依赖关系树,ant 根据所有 .project、.classpath、.settings/* 文件生成 Ant 构建脚本。这并不像最初看起来那么困难。这样我们就可以在没有(My)Eclipse 的情况下在干净的 CVS+JDK+Groovy 虚拟机上构建我们的产品。希望对你有帮助。。

    【讨论】:

    • 是的,我喜欢这条路线来识别依赖关系。我也在朝着相同的方向前进,不同之处在于我正在用 Java 编写新的 Ant 任务来解释 .project.classpath 文件。我遇到的实际问题是强制构建当前构建所依赖的组件。例如,如果EARProjectWebProjectEJBProject 尚未构建,则应从上面开始构建它们。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-27
    • 2012-05-21
    • 2014-05-25
    • 2013-01-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多