自动检查失效-工程类名红色波浪线没有错误也不消除
最近打开一个新工程,遇到一个问题,当修改类里面的代码时,中间有语法不正确的情况,这时左边目录结构会有红色下划线,这是正常情况。
问题是:
当我把代码语法改正确后,左边的目录结构中的红色波浪线还是存在,正常情况下是会自动去掉红色波浪下划线的,这个问题让我很恼火。如下图:
查个底朝天
查了两小时,起初怀疑是idea设置问题,尤其inpsection的设置问题,恢复默认设置还是不行,导入之前的导出过的标准配置也不行。
后来终于发现问题所在,只要我把idea下面的原始配置信息(conf, system,plugin,logs)清理掉后,这个问题就消失了。
这几个目录通常默认是在home目录下:
C:UsersAdministrator.IntelliJIdea2016.1
也可以通过配置idea.properties进行设置:
idea.config.path=F:/IntelliJ_IDEA_2016.1.3/home/config/
idea.system.path=F:/IntelliJ_IDEA_2016.1.3/home/system/
idea.plugins.path=F:/IntelliJ_IDEA_2016.1.3/home/plugins/
idea.log.path=F:/IntelliJ_IDEA_2016.1.3/home/log/
继续深入
现在锁定是在conf目录下了。
反复测试,挨个排除发现不是conf下一级的目录文件导致:
而是disabled_plugins.txt这个文件导致,删除后就没有问题。
这说明可能是之前的某种操作禁用了一个插件导致。
更加深入
最后确认下面几个插件导致这个问题:
com.intellij.javaee
com.intellij.persistence
com.intellij.database
也就是这三个插件只要有一个存在于disabled_plugins.txt,也就是被禁用了,就会上面的语法检查失效问题
必须同时启用才行。
彻底解决
实际上com.intellij.javaee和com.intellij.persistence对应的插件名是:
Persistence Frameworks Support
JAVA EE: EJB, JPA, Servlets
另外idea默认启用的database插件是:
Database Tools and SQL
这个插件会依赖上面的JAVA EE插件。
禁用了database插件,也会禁用JAVA EE插件。
要彻底解决这个问题,必须同时启用下面三个插件:
Database Tools and SQL
Persistence Frameworks Support
JAVA EE: EJB, JPA, Servlets
就写到这吧,希望能给那些在我后面还被坑,又搜到我这篇博客,却不给我点赞的傻吊们一些帮助。