Java9

module-info.java

module 本模块的名称{

	exports 对外暴露的包路径;
	
	requires 需要依赖的其他模块名称;
	
}
  • module-info.java不是类,不是接口,是一些模块描述信息。module也不是关键字。
  • exports 对外暴露的包路径;
    有些包你想要其他模块访问,有些包你不想要其他模块访问。
    有哪些包,你想要被其他模块访问的,这些包的名字就写在exports后面。
    就像import一样,但是不是导入,是导出。
  • requires 需要依赖的其他模块名称;
    本模块需要关联、依赖的其他模块,就把其他模块名称写在后面。
    只有一个模块不用写,java.base
//module mod.a中有:
//packet.abc.one
//和
//packet.abc.two

module mod.a{
	exports packet.abc.one;
}

module mod.b{
	requires mod.a; //模块b依赖模块a
	//b可使用a的one包
}

命名推荐使用完全英文小写,不要数字减号。

更多推荐

JAVA module-info.java文件