我有一个 Eclipse 项目,它依赖于同一工作区中的其他几个项目。我知道为单个独立的 Java 项目创建一个简单的 Ant 构建脚本,但是如何告诉 Ant 将所有这些项目集成到我的主 JAR 文件中,以便我的依赖程序可以工作?
在 Ant 中,最简单的方法是显式枚举其他项目并将它们包含在 jar 目标中。像这样:
<path id="all-projects">
<fileset dir="../my.other.project" includes="**/*class">
</path>
一种解决方案:Create a master project and put all the projects into it and have a single build.xml.
另一种选择:Create a master project but leave everything at the same level (do not place project-components inside the project folder) Then arrange your build script to refer to the other projects via relative paths. Note that with some build tools this is not even necessary as they will look at their repository.
虽然你可以用 Ant 来整合一个解决方案,但 Apache Maven 是比 Ant 更好的管理依赖关系的解决方案。如果您不想使用完整的Maven生命周期管理项目,还可以考虑使用Nexus存储库来存储工件,并将Apache Ivy包含在Ant构建脚本中以执行依赖关系管理。
Ivy 或 Maven 将提供一个更好、更易于管理的依赖管理策略,它可能比你自己组装的任何东西都更容易融入团队。