Intellij gradle - 使用显式模块组VS使用限定名称

Min*_* Yu 27 java intellij-idea gradle

我正在尝试创建一个Gradle Java应用程序.

在"新建项目"向导中,有两个选项可用:

  • 使用显式模块组
  • 使用限定名称

这两个选项意味着什么?有什么区别?

Ale*_*tig 12

  • 使用显式模块组

这指的是使用您喜欢的任何命名手动创建模块组的能力,并将模块分配给您喜欢的任何组.您可以在项目结构 - >项目设置 - >模块中操作模块组.这个功能已经在Intellij中使用了一段时间.这不会影响代码的行为,但只是一种保持井井有条的方式.

  • 使用限定名称

这是一个较新的选择.它指的是Java 9 Jigsaw引入的合格模块名称,它在Java中形式化了模块的概念.如果选择此选项,则模块将按其Jigsaw模块名称进行分组.换句话说,Intellij将根据Java理解它们的分组方式直观地组织您的模块.

  • 请注意,此功能(一般情况下在IJ中分组)非常错误.在我的情况下,每次更新我的build.grade文件时它都会使整个结构变平. (5认同)