IntelliJ+Maven依赖检测正常但编译提示包不存在求助
清理Maven依赖缓存并重新同步
别依赖IntelliJ的自动索引,直接在终端执行mvn clean install -U强制更新快照依赖,然后回到IntelliJ,点击右侧Maven面板的「Reload All Maven Projects」按钮,让IDE和Maven的依赖状态完全同步。检查依赖的scope配置
看看pom.xml里这个API依赖的scope是不是设成了provided——这个scope下,IntelliJ会识别依赖用于代码提示,但Maven编译阶段不会把它加入classpath,自然会报包不存在。改成compile(默认就是这个值,除非你手动改了)就行。确认本地仓库里的依赖包是否完整
去本地Maven仓库(默认路径是~/.m2/repository)找到这个API对应的依赖文件夹,解压JAR包看看里面有没有htt/layeredstructures目录和对应的class文件。如果没有,要么是pom里的坐标写错了,要么是私有仓库没配置导致拉取不到正确的包,得核对坐标和仓库配置。清除IntelliJ的编译缓存
执行「File → Invalidate Caches...」,勾选「Clear file system cache and local history」后点击「Invalidate and Restart」,重启IDE后再重新编译项目,有时候IDE缓存错乱也会导致这种反差问题。停止混用手动加JAR和Maven依赖
你之前在Project Structure里手动加的JAR,Maven编译时根本不会认——Maven只认pom.xml里的配置。赶紧删掉手动添加的JAR,完全交给Maven来管理依赖,确保pom.xml的配置和提供API的程序完全一致,让Maven自动拉取和维护依赖。
内容的提问来源于stack exchange,提问作者Alberto Plaza Montes

