我有一个 ivy.xml 文件,我在其中明确指定了我的依赖项。 Ivy 中是否有任何内置功能可以让我发现或自动更新过时的依赖项?
我不想使用 latest.release 因为我想要一个完全稳定和可重现的构建。但每隔一段时间我会想要更新一些依赖项,同时最好回答这个问题,哪些其他依赖项已过时?
最佳答案
和你一样,我只对内部依赖项使用动态版本。升级时,在新的开发阶段开始时,我会使用其中一个存储库搜索工具来发现 3rd 方库的新版本:
我相信你知道,另一个问题是升级依赖项通常会导致你的传递依赖项的非自愿升级......
我的建议是生成一个 Ivy 依赖报告并使用它来检查您的代码的模块使用情况。我发现这非常有用,特别是考虑到某些 3rd 方 Maven 模块表现不佳并且会将许多不必要的库导入我的类路径。
以下是我的标准依赖项目标的示例:
<target name='dependencies' description='Resolve project dependencies and set classpaths'>
<ivy:resolve/>
<ivy:report todir='${ivy.reports}' graph='false' xml='false'/>
<ivy:cachepath pathid="compile.path" conf="compile"/>
<ivy:cachepath pathid="provided.path" conf="provided"/>
<ivy:cachepath pathid="runtime.path" conf="runtime"/>
<ivy:cachepath pathid="test.path" conf="test"/>
</target>
希望这会有所帮助.... 如果您找到一种自动管理此功能的方法,我会很感兴趣。
关于maven-2 - 什么是 Maven 版本的 Ivy 等价物 :display-dependency-updates?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4950048/