【问题标题】:In case of ANT, How to pass Classpath to child build.xml在 ANT 的情况下,如何将 Classpath 传递给子 build.xml
【发布时间】:2012-04-10 12:24:46
【问题描述】:

我在 Eclipse 中创建了一个 EAR 项目以部署在 JBoss 上。在那里,我创建了 4 个项目,一个 EAR,一个 Hibernate 项目(数据层)、一个 EJB 项目(业务层)和一个动态 Web 项目(Web 项目)。 MBS(耳朵) -MBS数据 -MBSEjb -MBS网络

我正在为这个项目创建 ANT build.xml。我从每个项目中创建了单独的 build.xml。我将为 MBS(EAR) 项目创建 build.xml,在这个 build.xml 中,我将调用子 build.xml,如

<target name="build" description="build all projects in reference to this project">
    <ant antfile="build.xml" dir="${MBSData.location}" inheritAll="true" target="build"/>
</target>

因为在每个 build.xml 中 jboss_runtime_classpath 都是重复的,我想把它放在一个地方。所以我想知道如何将这个类路径传播到子 build.xml?

【问题讨论】:

    标签: ant build


    【解决方案1】:

    在 build.xml 和import 中定义类路径的一个选项@ 它无处不在。这在 ant 1.8 中可用。 (可能在早期版本中可用。见@Oers的评论)

    我不建议定义单个类路径并在任何地方使用它。每个项目都应该有明确定义的编译时依赖和运行时依赖(比如测试或使用 ant 运行应用程序)。拥有一个可在任何地方重用的大类路径将导致来自一个区域(例如 GUI)的代码使用来自另一个区域的代码(例如持久性)

    【讨论】:

    • import 早于 1.8,不知道从什么时候开始,但我在 ant 1.7 中使用它
    • @Oers:谢谢。我编辑了答案。我在迁移到 1.8 后开始使用它。
    猜你喜欢
    • 1970-01-01
    • 2014-06-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多