java 9: 在模块-info.java 中,我是否必须再次提及已经在源代码中导入的包((根据需要)

java 9: In module-info.java do i have to again mention packages((as requires) that are already being imported in sources

使用 java 9 个模块,如果我在我的代码中使用 java.xml...
1) 我将使用 import 语句导入 xml 包...
2) 如果我没有在我的模块的模块声明中提到这个包是必需的...
- 我的模块的编译工作.. ??
我猜……不……并且提到模块 info.java 需要 xml 包……它可能有效。
所以..我想知道的是...不是冗余...每个导入包都是隐含的...必需的。 (除非我需要更好地理解模块)

有没有办法在模块声明中提及所有导入的包,否则可能会在模块中提及一长串-info.java?

首先,在 module-info.java 中你提到了模块,而不是包。例如。 java.xml 是一个包含大约 25 个包的模块。因此,如果您的模块使用 java.xml 模块中的 10 个包,则不必在 module-info.java 中重复 10 次,只需编写一次 requires java.xml。所以,这个庞大的依赖列表实际上并不大。

如果你真的想跳过所有这些声明,你可以不创建 module-info.java(但我不建议这样做)。没有 module-info.java 的模块称为自动模块,它隐式需要所有其他模块。