例如,我有一个包含 JPMS 模块的 somefile-0.1.jar
jar 文件。此外,我有一个对该模块的引用 Module somemodule
。
如何通过模块获取jar文件名(使用somemodule
引用)?我检查了 Module API,但没有找到实现它的方法。
最佳答案
无法保证模块是从模块化 JAR 中加载的。无论如何,我认为这接近您要找的东西:
Module m = ...
ModuleLayer layer = m.getLayer();
if (layer != null) {
ModuleReference mref = layer.configuration()
.findModule(m.getName())
.map(ResolvedModule::reference)
.orElseThrow(() -> new RuntimeException("should not happen"));
}
关于java - 如何在 Java 9 中通过模块获取 jar 文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46319927/