Class.getResource在错误的jar中查找资源

时间:2014-05-29 11:36:06

标签: java

  • ClassA位于JarA
  • ResourceA位于JarA
  • ResourceB位于JarB

两个罐子都在类路径中。

ResourceA和ResourceB在各自的jar中具有相同的路径,即" resources / somefile.txt"

使用:

ClassA.class.getResource("resources/somefile.txt");

我希望总是得到ResourceA但是我得到了ResourceB。

这是预期的行为吗?如果是这样的话,有没有办法在这种情况下回归ResourceA?

提前致谢。

1 个答案:

答案 0 :(得分:0)

这与类加载器有关。克服这个问题的一个技巧是使用这样的东西:

A.class.getClassLoader().getResource("/yourResources")

其中A是所需档案中的某个类。