Module System是Java 9中引入的新功能。Module是一组软件包的集合,分为两种类型:Exported软件包和Concealed软件包。导出的软件包可以在此软件包之外使用。隐藏的软件包不能在该模块之外使用,只有该模块的代码可以使用这些软件包。
这里是F我们类型的模块中的Java 9如下
应用程序模块:创建此模块是为了实现功能。所有第三方依赖项都属于此类别。
自动化模块:可以在没有模块描述符的情况下放置在模块路径中的jar属于自动化模块。该模块的主要好处是使用Java 9之前的版本的jars。
未命名的模块:类路径上的任何jar或类都属于未命名的模块。由于它没有任何名称,因此可以读取和导出所有模块。
平台模块: JDK已转换为模块化结构,这些模块称为平台模块。
module <Module-Name> { requires moduleName; exports packageName; }