【发布时间】:2014-06-24 01:02:25
【问题描述】:
我使用的是 Play 2.2.2,并且我有一个外部 jar,它尝试从同一个 jar 的根目录加载 XML 资源。它使用System.class.getClassLoader().getResource("/Blabla.xml") 这样做。
这失败了,因为显然 Play 有一个奇怪的类加载器层次结构:ReloadableClassLoader 和几个父级。此层次结构不包括系统类加载器,也不包括扩展和引导类加载器。
这怎么可能?
我发现使用 ClassLoader.getSystemClassLoader() 会返回一个类似于标准类加载层次结构的类加载器层次结构。但我不想碰上面提到的外部罐子,让System.class.getClassLoader().getResource("/Blabla.xml")工作。
如何让System.class.getClassLoader().getResource("/Blabla.xml") 返回标准系统类加载器?
【问题讨论】:
标签: java playframework-2.0 classloader