好的,假设我有一个模块,我的所有项目都建立在“Module_A”上,然后我有“Module_B”,它建立在 A 上,最后我有一个依赖于 B 的顶级项目,因此也需要适当的版本一个。
模块 A 和 B 都使用 ant 脚本中的 Ivy 发布到 Artifactory。当我来开发 Module BI 时,可以使用 IvyDE 来解决我对 Module A 的依赖。
我遇到的问题是,当我来开发我的顶级项目时,我指定我依赖于模块 B,我希望模块 A 也从 Artifactory 中提取,但这不会发生,我不确定我需要什么去做以实现它。
因此,为了清楚地了解以下 ivy 文件,我希望模块 B 及其依赖模块 A 像魔术一样出现在我的类路径上。
<dependencies>
<dependency org="MY_ORG" name="NAME" rev="latest.integration">
<artifact name="MODULE_B" type="jar" ext="jar" />
</dependency>
</dependencies>
当我查看一些我已经解决的罐子时,比如说番石榴,它的 META-INF 目录中填充了一个 pom 文件。我需要在 jar 中创建和捆绑常春藤的等价物吗?
谢谢。
编辑
我相信上面的一些内容是不正确的,IvyDE 应该只是使用 artifactory 托管的 ivy 文件来确定传递依赖项,而不是查看 jar 内部 - 当我查看 artifactory 持有的文件时,它确实定义了我想要的传递依赖项解决。当我查看 IvyDE 缓存时,它包含一个不同的 ivy 文件,其默认配置在工件中不存在且没有依赖关系!
我正要决定 Ivy、IvyDE 和/或 Artifactory 都是浪费时间……有人可以建议可能出了什么问题。