本来准备写一下最近项目中遇到的Spring事务嵌套的问题,打开Idea之后,看到自己之前的代码(在家里自己的项目中)感觉有很多东西没有提交,之后提交的时候感觉很混乱,就进行了一些列操作,忘记动了什么东西,过了一会所有代码全线飘红,之前遇到过这种情况,这次竟然半天没有解决掉。折腾了很久终于解决了这个问题,记录分享一下这次解决的历程。

这里的报错有两类,一类是我自己写的代码,一类是导入的相关jar包,也就是说,所有的代码全部报错了,比如:

java 代码过长 错误 java代码大量报错_java 代码过长 错误

java 代码过长 错误 java代码大量报错_maven_02

尝试过的解决方案有:

  1. 更新maven;
  2. 使用maven进行clean、compiler等;
  3. Rebuild项目;
  4. 设置Modules中的Sources的类别;
  5. File -> Invalidate Caches/Restart(其他博文中的方法);
  6. 删除编译文件的目录。

折腾了几个小时,突然想起来是当时提交代码的时候,有一部分代码需要忽略不用提交,比如idea中编译的输出目录——target目录文件、iml文件、.idea等文件,其实没有必要提交的。如果提交的话,每次修改代码,我这个commit区域就提示有编译的代码要提交,感觉很难受,而且项目中确实不需要提交这些东西,我就按照其他博文中说的,通过File --> Settings -->Editor --> File Types——>Ignored Files and Folders,添加需要忽略的文件后缀,如图:

java 代码过长 错误 java代码大量报错_java_03

本人使用的是2020.3.3版本的idea,你们可以结合你们自身的版本进行调整。

我把之前添加的.class和target等取消掉,神奇的一幕出现了,代码马上全部不报错了!!!

我的理解是,这个“忽略的文件和文件夹”选项,如果填写了.class,可能就会导致此类文件被忽略被隐藏,所以会编译都报错。

接下来我们试一下,如果只填写target的话会有什么反应?

java 代码过长 错误 java代码大量报错_ide_04

代码没有报错,但是target目录不见了。

我们由此可以得出结论:

这个选项的作用就是隐藏文件,并且如果是设计到.class文件的话,会导致所有编译的文件全部报错,以及.java的代码。如果不想看到target,可以在此设置,但是.class就不要添加了。


2022年6月23日22:17:56

如果项目显示不是maven项目,而实际上是,这种情况肯能导致整个项目爆红出错。解决方案就是,把项目添加为maven项目,方法是:

右键点击pom.xml,Add as Maven Project,即添加为maven项目。

此时项目自动更新maven索引,报错全部解决。