
一个未命名的模块是未命名的包的概念。它是一个模块,在其中不能在任何命名的模块中定义包或类,但存在于 jar文件中的类路径中。如果我们的代码尝试从这些文件中加载类型,模块系统会尝试查找类路径并加载它。
一个未命名的模块会读取所有其他模块,包括所有命名的, 内置平台模块,并导出其所有包。未命名模块中的包可以被忽略,这也在命名模块中定义。
未命名模块可以访问:
- 模块路径中所有其他模块导出的所有包。
- 类路径中的所有jar文件(即在此未命名模块中存在的所有其他类型)。
语法
java --module-path out -module moduleName/com.tutorialspoint.UnnamedModuleTest
Example
的中文翻译为:示例
public class UnnamedModuleTest {
public static void main(String args[]) {
Module module = UnnamedModuleTest.class.getModule();
System.out.println("Module: "+ module);
System.out.println("Name: " + module.getName());
System.out.println("isNamed: " + module.isNamed());
System.out.println("Descriptor: " + module.getDescriptor());
}
}输出
Module: unnamed module @c818063 Name: null isNamed: false Descriptor: null











