JAVA module-info.java文件详解
作者:_七七
这篇文章主要介绍了JAVA module-info.java文件详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
JAVA module-info.java文件
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包 }
命名推荐使用完全英文小写,不要数字减号。
module-info.java什么意思
module-info.java什么意思,新版的eclipse一出来就看到这个文件,抱着试一试的心态。留着它。
结果导入类的时候发现出岔子了。
导类动作如下:
import org.apache.logging.log4j.core.Logger;
报错如下:
The type org.apache.logging.log4j.core.Logger is not accessible
上网搜了下,就是要加载的类不被许可类似这个意思。
也就是这货和go-module一样,是放许可的。
真是感觉天下的编程好雷同啊。这么设计的好处除了安全,还有什么呢。等我先试用一段时间之后再说
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。