尝试在 IntelliJ IDEA 中运行工作表时获得"Internal error: Scala instance doesn't exist or is invalid"



我正在尝试在Ubuntu上为Coursera课程设置Scala,并且我已经按照他们的指示安装了open-jdk 1.8,sbt(sbt关于v1.0.2)和IntelliJ Idea。我已经在 src/main/scala 中设置了一个带有 HelloWorld Scala 工作表的 sbt 项目,它只说"Hello, world",但是当我尝试评估工作表时,我收到错误

内部错误:Scala 实例不存在或无效:版本未知,库 jar:/home/[我的用户名]/.ivy2/cache/jline/

jline/jars/jline-2.14.5.jar,编译器 jar:/home/[my username]/.ivy2/cache/org.scala-lang.modules/scala-xml_2.12/bundles/scala-xml_2.12-1.0.6.jar

后跟更长的痕迹。我是否缺少设置步骤?该项目似乎在项目结构依赖项中指向Java v1.8,在"库"选项卡中,我看到SBT设置为Scala v2.12。

我刚刚在macOS Sierra上遇到了同样的问题。在注意到在我的build.sbt中我有:

name := "myScalaTests"
version := "0.1"
scalaVersion := "2.12.4"

但是提示sbt about,我的Scala版本是不同的。

sbt about
[warn] No sbt.version set in project/build.properties, base directory: /Users/myUser/projects
[info] Set current project to projects (in build file:/Users/myUser/projects/)
[info] This is sbt 1.0.2
[info] The current project is {file:/Users/myUser/projects/}projects 0.1-SNAPSHOT
[info] The current project is built against Scala 2.12.3
[info] Available Plugins: sbt.plugins.IvyPlugin, sbt.plugins.JvmPlugin, sbt.plugins.CorePlugin, sbt.plugins.JUnitXmlReportPlugin, sbt.plugins.Giter8TemplatePlugin
[info] sbt, sbt plugins, and build definitions are using Scala 2.12.3

所以我相应地更改了build.sbt中的scala版本,它起作用了。

相同的内部错误可能是由 sbt 启动器和项目 sbt 版本之间的版本不匹配引起的,如下所述:

内部错误:Scala 实例不存在或无效

在我的项目中,没有 scala 版本不匹配,但下载最新的 sbt 启动器并重新启动我的会话解决了这个问题。

最新更新