就像标题说的,有没有办法解决这个问题? 我导入了两个单独的第三方库,它们具有完全限定的类名冲突。
现在这两个库都以 jar 形式导入,似乎在某些环境(命令行调用、Eclipse)中找到了正确的类,而在另一些环境 (Maven) 中找到了错误的类,我得到了一个缺少的方法异常。 如果找不到解决方案,我可以回退到重构其中一个库并重建 jar,但我宁愿不必在每次库更新时都重复这项工作。
编辑:如果有人以后看到这个并感到困惑,我接受了戴夫牛顿的答案,因为如果你足够勤奋,在编写所有代码之前抓住这个问题,这将是正确的方法。 正如我所怀疑的那样,在编写所有代码后自动修复导入似乎是不可能的。
你要么遮阳,把它们拆开,去掉重复的,要么......
当你有多个实现时,你会受到类加载器的摆布,除非你采取积极的措施来减轻欺骗。
在这个SO问题上进一步讨论。