一.问题 Module ** must not contain source root **. The root already belongs to module **
1.1 背景
在建立springBoot 多模块项目时,其中在parent 建立了一个Maven pom 项目形式的子模块,该子模块用来管理多个starter jar

然后在该模块下建立子模块,如下图

编译时出现错误,于是修改project Structure 配置 jdk 版本,保存不了,如下图提示:

1.2 解决方式
上面提示的问题,设置的source Folder,source Resource等这些类似的 属于子模块部分的,在父模块中需要把这些去掉,当前场景下仅仅父模块起了一个管理多模块作用,并没有实际的行为,去掉后,如下图:

二.问题 mvn compile 时 Fatal error compiling: 警告: 源发行版 XX 需要目标行版 XX 等
2.1原因
本地的jdk 版本与编译的jdk 版本不一致;
2.2 解决方式
检查项目的jdk 版本

检查各个模块的版本

检查pom 文件中指定的编译版本
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
网友评论