自动模块是我们放在模块路径上的一个 jar。有许多预先存在的库可以在我们的应用程序中使用,其中许多尚未模块化。为了便于迁移,我们可以将任何库的 jar 文件添加到应用程序的模块路径中,然后使用该 jar 文件中的包。它可以隐式地成为一个自动模块,并且可以在模块声明的 require 指令中指定。 jar 的文件名成为其模块名称,该名称必须是可在“requires”指令中使用的有效 Java 标识符。
自动模块:
- 隐式导出所有包类型,因此任何可以读取自动模块的模块(包括未命名模块) 必须访问自动模块包中的公共类型。
- 隐式读取(需要)所有其他模块,包括其他自动模块和未命名的模块模块,因此自动模块可以访问系统其他模块公开的所有公共类型。
%JAVA_HOME%java --module-path ./libs:./libs-legacy --module app/com.app.Main
登录后复制
自动模块命名:
- 删除扩展名“.jar”。
- 版本号已删除。例如:mylib-1.2.3 -> mylib
- 非字母数字字符替换为句点。
- 重复点替换为单个点,链的开头和结尾的点将被删除。
以上就是Java 9中的自动模块是什么?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!