idea 中提示方法不存在,但运行代码却没有问题,如何解决?

下了个若依的代码,运行没有问题,但idea中红色的提示却让人很不爽。
清除 idea 缓存后,还是这样。
请问还可能是什么原因?如何解决?

image.png

代码应该是没问题的。
image.png

阅读 1.4k
1 个回答

IDEA是个非常🐮的IDE工具, 但是大部分时候,"犯起病"来确实头疼, 以下是我遇到这种问题的解决方式, 还没有遇到解决不了的。

1.确定当前项目的JDK版本是否正确

每个模块的JDK版本也要确认
在聚合模块下,一个子模块的<java.version>错误,整个项目就不会进行maven的重新导入,需要保证所有项目没问题

image.png
image.png
image.png

2.确定Maven配置正确

maven这里非常容易出错,了解清楚maven配置文件的优先级,建议直接在家目录下的.m2/settings.xml改,底下两个✅永远不需要

image.png
image.png

3.Annotation Processors要开启

尤其是使用了lombok的项目,必须开启,否则lombok注解一直飘红,没有getter/setter
同样这里也有每个模块的单独设置

image.png

4.确定子模块的编译版本

该问题出现,就是因为pom文件不规范,缺少java.versionmaven-compiler-plugin
image.png

以上步骤后,在根模块命令行运行mvn -T 1C clean,直接强制多次刷新pom文件,看到重新导入的进度条走完,没有报错即可
image.png

5.终极步骤

如果经历以上步骤,问题仍然没解决,继续飘红,那你可以关闭IDEA了,然后命令行或者文件资源管理器,删除当前目录的.idea文件夹,使用IDEA重新打开项目,配置一下JDK和maven就好了
出现这种情况,就是.idea/misc.xml.idea/compiler.xml内容出现问题了
image.png

6.修改错误pom
第5步之后,继续报错,或者说已经不报错了,但是有些模块的目录画了一道横线,这种时候就是pom文件有问题,可能在子模块,也可能在父模块

我们在根pom中注释所有的<module>标签,刷新pom,此时IDEA提示Load Maven Project,一定要点。
image.png

然后逐个取消注释,每取消一个,刷新一次pom,点一次Load Maven Project,就能排查到有问题的模块。

熟练之后,这个问题还是非常好解决的。

很多帖子传的File --> Invalidate Caches ... ---> 全选 ---> Invalidate and Restart这个并不好使,稍微大点的项目,重启加载一次的时间太久了,熟练之后,其实就是maven变更太快,IDEA自动加载,部分配置项识别错误,或者没加载到。
image.png

推荐问题
宣传栏