错误:scala:Scala编译器库中没有'scala-library*.jar'

jks*_*der 35 scala intellij-idea playframework-2.0 intellij-13

环境:播放2.3.0/Scala 2.11.1/IntelliJ 13.1

我使用Typesafe Activator 1.2.1使用Scala 2.11.1创建一个新项目.项目创建后,我跑了gen-idea.生成的IDEA项目无法编译并显示错误:

Error: scala: No 'scala-library*.jar' in Scala compiler library in test

难道我做错了什么?解决方法?

在此输入图像描述

Sea*_*ene 33

  1. 打开文件 - >项目结构 - >库,删除其中的任何scala sdk,例如下图中的scala-sdk-2.11.8. 在此输入图像描述

  2. 单击+,然后单击Scala SDK. 在此输入图像描述

  3. 从列表中选择正确的Scala SDK,对我来说,它是图中所示的Ivy-Scala-2.11.8.在此输入图像描述

  4. 选择当前项目(我的是spark-test),单击"确定". 在此输入图像描述

  5. 然后单击"确定"关闭它. 在此输入图像描述

  6. 再次运行,它现在应该工作.

  • 这有效,但我真的不知道发生了什么变化? (2认同)

Vla*_*eev 20

从IDEA 13开始,您应该使用与Scala插件捆绑在一起的SBT支持.

有了它,就不需要添加第三方SBT插件并运行特殊命令; 只需使用"文件 - >导入项目..."菜单项导入项目,它将自动加载SBT项目结构及其依赖项.

  • 这个解决方案几近完美.IntelliJ似乎选择Scala 2.10作为Scala Facet中的语言级别,但选择了2.11编译器.将语言级别调整为Scala 2.11会在此处关闭循环. (9认同)

Rus*_*ell 7

我对./activator idea with play 2.3生成的.idea文件也有同样的问题.快速解决方法是查看"项目结构 - >模块"并记下编译器库的名称.对我来说,这是"SBT:scala2.11.1".查看"项目结构 - >库"并查看该库的内容.它应该包含scala-compiler.jar,scala-library.jar,scala-reflect.jar.如果这个库不存在,添加它们(在我的情况下,它们位于〜/ .sbt/boot/scala-2.11.1/lib中).