Unnamed Module เกี่ยวข้องกับ Unnamed Package คือโมดูลที่แพ็กเกจ/คลาสไม่ได้อยู่ใน named module แต่อยู่ใน JAR file บน classpath
เมื่อโค้ดพยายามโหลดประเภทจากไฟล์เหล่านี้ ระบบโมดูลจะค้นหาใน classpath และโหลด
คุณสมบัติ
- อ่านโมดูลอื่นทั้งหมด (named, built-in platform modules)
- Export ทุกแพ็กเกจของมันเอง
- เข้าถึงได้: ทุกแพ็กเกจที่ export จากโมดูลใน module-path, ทุก JAR ใน classpath
ตัวอย่าง
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()); // null
System.out.println("isNamed: " + module.isNamed()); // false
System.out.println("Descriptor: " + module.getDescriptor()); // null
}
}
ผลลัพธ์
Module: unnamed module @c818063 Name: null isNamed: false Descriptor: null