Maven依赖层级视图处理项目POM文件时失败的求助
嘿,我之前在维护老版本STS项目时也碰到过一模一样的问题,结合你的场景,给你几个实用的排查和解决方向:
先确认Maven项目的关联状态
有时候STS会因为项目导入、配置变动丢失Maven关联。右键项目 →Maven→Update Project...,勾选Force Update of Snapshots/Releases后点击OK。更新完成后,还可以去项目属性(右键→Properties→Project Facets)确认Maven选项是勾选状态的。清理STS的Maven缓存与索引
STS的本地缓存文件偶尔会异常,导致视图加载失败。你可以这么操作:- 关闭STS,找到工作区目录下的
.metadata/.plugins/org.eclipse.m2e.core/nexus和.metadata/.plugins/org.eclipse.m2e.core/registry文件夹,删除里面的所有缓存文件(别删文件夹本身)。 - 重启STS后,右键项目 →
Maven→Download Sources and Javadoc,重新拉取依赖元数据。
- 关闭STS,找到工作区目录下的
排查pom.xml的隐性问题
哪怕格式看起来正确,一些隐性问题比如依赖冲突、无效仓库配置、依赖坐标拼写错误(groupId/artifactId/version写错),也会导致视图加载失败。先在项目根目录运行mvn dependency:tree命令,如果命令行能正常输出依赖树,说明pom本身没问题,问题出在STS插件;如果命令行报错,就先修复pom里的问题。修复或重装M2E插件
STS 3.7.3自带的M2E插件可能损坏。打开Help→About Spring Tool Suite→Installation Details,找到Maven Integration for Eclipse相关插件,看看有没有可用更新(不过这个版本比较老,大概率没有),不行的话就先卸载这些插件,再通过Help→Eclipse Marketplace搜索安装对应版本的M2E插件,重启STS再试。尝试切换工作区
极端情况下,工作区的配置文件损坏也会引发这类问题。新建一个空白工作区,重新导入项目,再检查Dependency Hierarchy视图是否正常。
内容的提问来源于stack exchange,提问作者Michael M

