SBT + Idea 13 =>无法解析符号

时间:2014-04-03 18:22:59

标签: intellij-idea sbt

我正在使用SBT + Idea 13.1.1,我的所有SBT文件都是红色的:

name := "Transformer"

version := "1.0"

libraryDependencies ++= Seq(
  "com.github.scopt" %% "scopt" % "3.2.0",
  "org.scalatest" % "scalatest_2.10" % "2.1.0" % "test"
)

它说“无法解析符号...”的名称或版本......但是Seq没问题 但是从SBT cmd运行应用程序,甚至是直接运行主要或scalatests的Idea都是好的。

我知道排除故障的信息并不多,但我不知道要检查什么。告诉我,如果你有一个想法,我会提供一切。

干杯

8 个答案:

答案 0 :(得分:44)

要解决此问题,请删除文件夹.idea并重新导入项目。

根本原因仍然是一个谜......

答案 1 :(得分:25)

当我更新到SBT 0.13.7时,我遇到了类似的问题。 IntelliJ开始将操作符标记为:=和++为红色,并显示消息“无法解析符号”

我修复此解决方案的步骤如下:

  1. 在“文件”下的IntelliJ中设置,我切换我的SBT Runner使用自定义启动器(并给了我的路径sbt-launch.jar,对我来说是/opt/sbt/bin/sbt-launch.jar)。

  2. 经过测试,我仍然可以在上面的#1之后编译,然后我不得不使缓存无效并重启;在文件下|使高速缓存无效/重新启动...

  3. 就是这样! : - )

答案 2 :(得分:1)

我在14.1.2上遇到了类似的问题;在我的情况下添加

libraryDependencies += "org.scalatest" % "scalatest_2.11" % "2.2.1" % "test"

然后尝试

import org.scalatest._

会导致:无法解析符号scalatest

降级sbt(0.13.8 - > 0.13.7);在build.properties中解决了这个问题。

这里有更多details

答案 3 :(得分:1)

将我的build.properties0.13.8更新为较新的版本,例如0.13.15,为我解决了这个问题。 Reference github issue.

答案 4 :(得分:1)

如果其他解决方案均无效,并且您与我同舟共济,则您在Cannot resolve symbol ...中看到build.sbt,并且所有文件都具有sbt依赖性,并且没有External Libraries中的sbt依赖项,运行File | New | Module from Existing Sources...并选择build.sbt可能会为您修复,因为它为我修复了。

答案 5 :(得分:0)

在IDEA 14.0中遇到同样的问题。上面没有任何工作。

升级到IDEA 14.1.1就可以了。

答案 6 :(得分:0)

重新启动IntelliJ为我修复了它。

答案 7 :(得分:0)

大约是.idea文件夹,如果不包含codeStylesModuleslibraries,则会出现该错误。我通过从具有该文件夹的另一个项目中导入该文件夹来修复它。然后重新启动IntelliJ