在新的ModuleLayer中加载应用程序模块时,加载必需的库模块时出现问题

时间:2019-04-27 01:15:38

标签: java java-9 java-module

我正在尝试创建一个新层(引导层除外),并从其中的特定目录路径加载Java模块(ModuleA)。下面的代码可以成功定位和加载ModuleA本身,但不能解析ModuleA所需的库模块:

ModuleFinder finder = ModuleFinder.of(Paths.get(modulePath));
ModuleLayer parent = ModuleLayer.boot();
Configuration cf = parent.configuration().resolve(finder, ModuleFinder.of(), Set.of(moduleName));

ClassLoader scl = ClassLoader.getSystemClassLoader();
ModuleLayer.Controller newLayer = ModuleLayer.defineModulesWithOneLoader(cf, List.of(parent), scl);

我从resolve方法中得到以下异常:

Exception in thread "main" java.lang.module.FindException: Module <library module> not found, required by <ModuleA>

您知道如何与ModuleA一起解析所有必需的模块(包括库模块)吗?

0 个答案:

没有答案