问题
今天导入一个Maven项目,里面有多个Maven子模块。完成后发现部分子模块未识别(未识别的标记为A),代码都是灰色的。原因可能是因为我导入外部的项目时,只加载了父Maven,而内部的子Maven没有被搜索到。
确切的来说,是父模块的pom.xml此时仅包含部分子模块,也就说有一部分暂(标记为A的子模块)时被排除掉了,因此在加载父pom.xml时,默认不加载标记为A的子模块。
解决方法:
方法一:
1、打开“View → Tool Windows → Maven”出现如下界面
2、点击加号,选择子模块下的 pom.xml 文件,然后点击 OK 即可
这样只能显示出来,但是如何本来就依赖父pom.xml中的一些配置,最好还是在父pom.xml里面把子模块加入到
<modules> </modules>
中,否则仍会报一些变异错误。
方法二:
重新导入子Maven,即单独选中子模块,而不是通过父pom.xml导入
1、File → Project Structure → 点击“Modules” → 点击“+” → “Import Model”
2、选择子模块下的 pom.xml 文件导入即可