当前位置: 首页 > 知识库问答 >
问题:

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

苗烈
2024-09-24

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

image.png

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

共有1个答案

子车芷阳
2024-09-24

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

 类似资料:
  • 本文向大家介绍vue.js element-ui validate中代码不执行问题解决方法,包括了vue.js element-ui validate中代码不执行问题解决方法的使用技巧和注意事项,需要的朋友参考一下 先说结论 在自定义验证里面每一个判断都要有callback(),就是要保证callback()一定会执行到 因为要验证数字,参考了官网参考代码如下,发现有如下图bug,当输入为以数字开

  • 本文向大家介绍IDEA 2020代码提示忽略大小写的问题,包括了IDEA 2020代码提示忽略大小写的问题的使用技巧和注意事项,需要的朋友参考一下 使用Ctrl+Alt+S快捷键,或者 File–>Settings–>Editor–>General–>Code Completion 老版本IDEA 把 Case sensitive completion设置成None就关闭了区分大小写的问题,默认是

  • 我刚刚下载了IDE,我想用它编辑我的第一个Java文件,我对创建整个项目不感兴趣,只是编辑单个文件。 因此,我使用Intellij IDEA从桌面上打开了该文件,因为我将其设置为打开。java文件的默认程序。 我写了一些代码,主运行和调试按钮是灰色的!我不能运行我的代码! 编辑:我也无法运行我的文件,无论它是否在一个项目中。

  • 本文向大家介绍Python运行提示缺少模块问题解决方案,包括了Python运行提示缺少模块问题解决方案的使用技巧和注意事项,需要的朋友参考一下 背景: 在pycharm中运行正常,但是使用命令方式就提示没有模块 解决方案 在Python安装目录下的\Lib\site-packages文件夹中建立一个.pth文件,内容为自己写的 查看包是否有导入 再次运行,就成功了 以上就是本文的全部内容,希望对大

  • 我得到 它不包含我在NetBeans中使用的jdk的路径。我没有找到一种方法告诉Java我想使用另一个jdk,所以我尝试了不使用: 运行特定主文件的示例 在java.lang.class.PrivateGetMethodRecursive(class.java:3048) 在java.lang.class.GetMethod0(class.java:3018) 在java.lang.class.G

  • 本文向大家介绍解决在pycharm运行代码,调用CMD窗口的命令运行显示乱码问题,包括了解决在pycharm运行代码,调用CMD窗口的命令运行显示乱码问题的使用技巧和注意事项,需要的朋友参考一下 以下面的代码为例 在pycharm界面运行后会显示乱码,如下图所示 网上很多无用的教程,说什么在代码里加一行"#coding=utf-8",然而并没什么用! 我只讲干货, 其实方法很简单,在pycharm