环境:播放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
我做错了吗?解决办法:
答案 0 :(得分:31)
答案 1 :(得分:20)
自IDEA 13以来,您应该使用与Scala插件捆绑在一起的SBT支持。
有了它,就不需要添加第三方SBT插件并运行特殊命令;只需使用"文件 - >导入项目导入项目......"菜单项,它将自动加载SBT项目结构及其依赖项。
答案 2 :(得分:6)
我对./activator创建的.idea文件与play 2.3有同样的问题。快速解决方法是查看“项目结构 - >模块”并记下编译器库的名称。对我来说,这是“SBT:scala2.11.1”。看看“Project Structure-> Libraries”并查看该库的内容。它应该包含scala-compiler.jar,scala-library.jar,scala-reflect.jar。如果这个库不存在,添加它们(在我的情况下,它们位于〜/ .sbt / boot / scala-2.11.1 / lib中)。
答案 3 :(得分:1)
对于IDEA 15和从Activator 1.3.5导出的项目,目前只有Russell的解决方案有所帮助。 我修复了scala编译器库,在〜/ .sbt / boot / scala-2.11.1 / lib中添加了3个库到库的编译器类路径和类。索引项目后,我将此库移动到IDEA的全局库中,并将其保存在那里。
答案 4 :(得分:1)
我遇到了同样的问题。
如果使用外部sbt
即sbt compile
构建项目,那么它将在库中创建或添加依赖项(所有外部依赖项也是如此),scala sdk将添加为基于SBT:scala*
的{{1}}在你的scala版本上。
因此,您可以删除带有SBT作为前缀的SDK
,并通过Intellij添加适当的SDK。
File->Project Structure->Libraries
删除SBT SDK并手动添加。
答案 5 :(得分:0)
对于使用IDEA 12的我,当我取消选中Settings.Compiler中“使用外部版本”的复选框时,我解决了这个问题。
答案 6 :(得分:0)
现在是 2021 年,在 Mac 上,使用 IntelliJ 运行 scala:
Mac
:brew install scala
IntelliJ
:打开*.scala文件,然后根据提示自动配置java JDK
和Scala SDK