intellij-idea IntelliJ源代码编辑器显示虚假的编译错误

lsmd5eda  于 2022-11-01  发布在  其他
关注(0)|答案(6)|浏览(199)

我对IntelliJ IDEA开发环境(第14版)的scala有以下奇怪的行为:
在我将scala SDK从2.11版本重置为2.10.4版本后,源代码编辑器显示了许多编译错误:列表、Map、打印(1到n)等都是红色。
将SDK添加到全局库中,并找到所有jar。
然而代码编译和运行正确(我重新构建了项目以强制重新编译)。有人经历过这样的事情吗?如何修复这个问题?
我使用的是java sdk 1.7.0_55。

mwngjboj

mwngjboj1#

在文件菜单中,Invalidate Caches / Restart
Settings -> Build, Execution, Deployment-> Compiler -> Scala Compiler中还将增量类型设置为SBT

pbwdgjma

pbwdgjma2#

很有可能是你没有正确加载你的项目,这就是为什么错误出现。我写了一个完整的博客post关于你如何可以修复它。下面是两个方法,从写了可以纠正你的问题。
这两个步骤应该可以帮助你,其余的请检查link

1.将项目导入为SBT项目:

首先,关闭你的项目,在选择目录并选择SBT作为外部模块后再次导入它。选择Import Project,然后转到项目目录,选择你的项目,选择Import Project from external model,选择SBT并点击Next,然后点击Finish。IntelliJ IDEA会要求你覆盖.idea文件,说Yes。在IDEA完成索引和加载你的项目后,所有的问题都会被整理出来。2编辑器会工作得很好,你会有你丢失的功能恢复。

2.使用SBT-IDEA修复缺少的项目文件:

有时IntelliJ IDEA会遗漏最重要的项目文件,并显示编辑器错误沿着代码完成错误,但是在代码编译过程中,一切都按照您的预期运行。此解决方案使用一个名为SBT-IDEA的插件。现在要启用此插件,请打开您的终端并按照说明操作:
a.在目录~/.sbt/0.13/plugins中创建文件plugins.sbt
B.现在,将以下内容写入其中:

resolvers += "Sonatype snapshots" at "https://oss.sonatype.org/content/repositories/snapshots/"

addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.7.0-SNAPSHOT")

注意:请在插件的GitHub page上查看最新版本。
保存并退出,然后在项目根目录中执行sudo sbt gen-idea
希望能帮上忙!

  • 谢谢-谢谢
pw136qt2

pw136qt23#

在我的例子中,我改变了build.sbt文件(添加了空行并保存了文件)。然后我重新检查了依赖关系并建立了索引。然后一切都正常了。

dvtswwa3

dvtswwa34#

要删除所有的假错误,有时需要禁用类型感知突出显示

  • 按Ctrl + Alt + Shift + e组合键,例如:

https://blog.jetbrains.com/scala/2011/03/02/type-aware-highlighting/
这些错误似乎是因为Scala插件重新实现了编译器逻辑而导致的,这是不完美的。
更多信息请参见评论:
https://www.reddit.com/r/scala/comments/5pcwfv/question_what_causes_intellij_idea_highlighter/

wpx232ag

wpx232ag5#

当IntelliJ试图自己构建代码并悲惨地失败时,就会发生这种情况。
如果您知道您的构建是成功的,那么您所需要做的就是编辑Run Configuration并删除Before Launch部件中的Build部件。
这个解决方案为我解决了它!

eulz3vhy

eulz3vhy6#

请尝试使缓存无效并重新启动IDEA。
(File〉使缓存无效)
等待IDEA重新索引您的项目(右下角状态栏上的状态指示器)。缓存有时会损坏。这最有可能发生在您提到的重新组织项目时。

相关问题