我遇到了 JPMS jdk.internal.loader 的障碍。在我的 IDE 上下文中执行主要方法时的 BuiltinClassLoader(我使用 IntelliJ 2018.1) 。
如果使用标准方法将资源加载到模块类中,例如
MyMainClass.class.getResourceAsStream("/some-resource")
找不到资源,因为ModuleReference不是 jar,而是类路径,例如
[module org.ubl.scb, location=file:///home/christopher/IdeaProjects/systematik-catalogue-builder/web-anno/out/production/classes/]
nameToModule映射中的所有其他条目如下所示:
key = "logback.core"
value = "[module logback.core, location=file:///home/christopher/.m2/repository/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3.jar]"
当然,资源永远不会在类中找到,但如果该位置是 jar 根目录,则可能是这样。
这是一个错误还是我错过了什么?