gpt4 book ai didi

java - 找出 Eclipse 项目中引用的 jar 的所有冲突包/类

转载 作者:搜寻专家 更新时间:2023-10-30 23:00:40 26 4
gpt4 key购买 nike

我目前正在处理一个巨大的 Eclipse 项目(不是我写的)。该项目不使用任何依赖管理工具。它引用了数百个 JAR。

其中一些 JAR 包含相同的包(和类),但版本不同。目前,解决冲突的方法是手动(随机!)在 Order&Export(在项目属性中)中重新排序这些 JAR。

这已经做了很长时间了,现在有很多包/类具有不同的供应商/版本/产品线。

重新排序会导致项目的某些部分失败,而其他部分开始工作,反之亦然。奇怪的是,很多命令不会导致构建错误,而只会导致运行时错误。

是否可以通过一种工具来解决这个问题,该工具会建议依赖 JAR 的某些自动顺序?

最佳答案

Google for JarAnalyzer,它至少有助于弄清楚依赖关系是如何建立的。使用 jar ,您的 eclipse 项目也在生成。但是,您无法真正将其自动化。想象一下您的一个 eclipse 项目需要 bad-1.0.jar 而另一个使用 bad-1.2.jar。很多时候你不能用 1.2 替换 1.0,因为你的项目不会再编译了。所以从长远来看,你必须删除过时的 jar ,切换到所有子项目中的“通用版本”并修复编译器错误。当你这样做的时候,切换到 ivy 或 maven。

您的 jar 文件是否有正确的名称,或者您是否有 3 个不同版本的 bad.jar,它们在文件系统中看起来相同但实际上是不同的版本?如果是这样,首先重命名所有相关的 jar 文件以包括版本号(通常可以在 list 文件中找到 eb)......我曾经做过你做的事情并用 JArAnalyzer 写信给我,有点常规和一些 shell 脚本小为项目生成所有 ivy 文件的工具。

关于java - 找出 Eclipse 项目中引用的 jar 的所有冲突包/类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6817026/

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