gpt4 book ai didi

java - 使用 Ivy 指定传递依赖关系

转载 作者:行者123 更新时间:2023-12-01 12:50:11 24 4
gpt4 key购买 nike

好吧,假设我有一个所有项目都基于“Module_A”构建的模块,然后我有一个基于 A 构建的“Module_B”,最后我有一个依赖于 B 的顶级项目,因此也需要A 的适当版本。

模块 A 和 B 都正在使用 Ivy 从 ant 脚本发布到 Artifactory。当我开始开发模块 B 时,我可以使用 IvyDE 来解决我对模块 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>

当我查看我已经解析的一些 jar 时,比如 guava,它的 META-INF 目录中填充了一个 pom 文件。我需要在 jar 内创建并捆绑 Ivy 的等效项吗?

谢谢。

编辑

我认为上面的一些内容是不正确的,IvyDE应该只使用artifactory托管的ivy文件来确定传递依赖项,而不是查看jar内部 - 当我查看artifactory持有的文件时,它确实定义了传递依赖项我想解决这个问题。当我查看 IvyDE 缓存时,它包含一个不同的 ivy 文件,其默认配置在工件中不存在并且没有依赖项!

我即将决定 Ivy、IvyDE 和/或 Artifactory 都是浪费时间……有人可以建议一下可能出了什么问题吗?

最佳答案

我相信我已经通过使用 URL 解析器而不是 ibiblio 解决了这个问题。尽管使用 Ivy 发布到 Artifact 并使用 Ivy 解决我的依赖关系,但我需要使用 URL 解析器来指定 ivy 模式。完成此操作后,我的传递依赖关系就开始得到解决。

请注意,我仍在使用 ibiblio 解析器来处理 junit 等外部依赖项。

关于java - 使用 Ivy 指定传递依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24284836/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com