【发布时间】:2017-10-14 23:51:37
【问题描述】:
如果module-info.java 引用设置了“Automatic-Module-Name”的自动模块,为什么 Java 9 编译器会警告“需要自动模块的指令”?这样的模块有什么风险?
这个问题与What is an automatic module? 并不完全相同,因为后者没有解决我所引用的编译器警告背后的具体原因(问题的上下文很重要)。也就是说,这是一个有用的后续阅读链接。
【问题讨论】:
-
虽然不是完全重复,但恕我直言,What is an automatic module? 涵盖了这个问题的答案。只是它没有具体包括雷米的前景。
-
顺便说一句,您可以通过使用 javac 的额外选项“-Xlint”来禁用此警告,例如“-Xlint:all,-requires-automatic”,这意味着“启用所有警告,但有关使用的警告requires 子句中的自动模块”。
-
我认为这个问题有点误导。如果你
requires transitive一个自动模块或者你用-Xlint:requires-automatic编译,javac 只会发出警告。
标签: java-9