现象
新建一个springboot的子模块的时候,此时parent是spring-boot-starter-parent,然后pom文件project根标签经常会报红
解决方法
parent标签里面加上属性
<relativePath></relativePath>
截图:
原因
因为实际上springboot子模块真正的parent是spring-boot-starter-parent,但是貌似这个模块又是你现在项目的子模块,好像有些许关联
但其实你子模块加上parent,并不会完全跟你现在根项目没关系,如果你没有加上relativePath,maven还是会默认去找子模块目录下的pom文件对应的项目为父亲模块。
但是只是加上relativePath为空就没事了,他就回去找远程的pom文件对象的项目为父亲模块
relativePath的解释
The relative path of the parent pom.xml file within the check out. If not specified, it defaults to ../pom.xml. Maven looks for the parent POM first in this location on the filesystem, then the local repository, and lastly in the remote repo. relativePath allows you to select a different location, for example when your structure is flat, or deeper without an intermediate parent POM. However, the group ID, artifact ID and version are still required, and must match the file in the location given or it will revert to the repository for the POM. This feature is only for enhancing the development in a local checkout of that project. Set the value to an empty string in case you want to disable the feature and always resolve the parent POM from the repositories.
Default value is: ../pom.xml.