在java build-path中引用错误的jar文件

时间:2013-07-01 08:06:58

标签: java eclipse-classpath

在我的项目中,我们引用了许多依赖.jar文件。

/lib/xxx.jar /lib/abc.jar

xxx.jar文件包含一些(com.search.hit)包。 abc.jar文件中提供了相同的软件包。但现在问题就出现了,访问xxx.jar文件时它没有引用它们的软件包(com.search.hit),而是引用了abc.jar软件包。

有人能说出如何重定向流程吗?

4 个答案:

答案 0 :(得分:0)

类路径中首先出现的jar类是使用的类。就类加载器而言,另一个可能甚至不存在。避免这样的冲突是个好主意。

答案 1 :(得分:0)

在Eclipse中,转到项目构建路径配置,然后单击Libraries选项卡。 然后从列表中删除您不想访问的包,然后重新添加。

这会导致优先级列表中的包较低,并且会在您刚刚重新添加的包之前检查其他包。

答案 2 :(得分:0)

这会给你带来麻烦。我的建议是为这些jar文件创建2个额外的类来编写getter和setter包装器。编写2个单独的类,每个类只引用其中一个,您的项目文件将使用这些包装类从这些jar调用函数。这样会更容易。

答案 3 :(得分:0)

您必须更改程序包名称,它不能与单个JVM中具有相同程序包的文件名相同。 JVM将使用类加载器随机加载一个jar类,忽略其余的。