38

环境:播放 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

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

在此处输入图像描述

4

8 回答 8

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

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

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

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

  5. 然后单击确定将其关闭。 在此处输入图像描述

  6. 再次运行,它现在应该可以工作了。

于 2017-10-04T12:23:37.930 回答
19

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

有了它,无需添加第三方 SBT 插件和运行特殊命令;只需使用“File -> Import project...”菜单项导入项目,它将自动加载 SBT 项目结构及其依赖项。

于 2014-06-03T18:37:21.363 回答
7

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

于 2014-07-13T03:07:32.013 回答
1

对于 IDEA 15 和从 Activator 1.3.5 导出的项目,目前只有 Russell 的解决方案有帮助。我已经修复了 scala 编译器库,将位于 ~/.sbt/boot/scala-2.11.1/lib 中的 3 个库添加到库的编译器类路径和类中。索引项目后,我将此库移至 IDEA 的全局库并保存在那里。

于 2015-07-28T14:13:33.670 回答
1

我遇到过同样的问题。

如果您使用外部sbtie构建项目,sbt compile那么它将在库中创建或添加依赖项(所有外部依赖项也),并且 scala sdk 将SBT:scala*根据您的 scala 版本添加。因此,您可以删除SDK以 SBT 作为前缀并通过 Intellij 添加适当的 SDK。

File->Project Structure->Libraries

移除 SBT SDK 并手动添加。

于 2017-09-21T10:10:35.470 回答
0

对于使用 IDEA 12 的我来说,当我取消选中 Settings.Compiler 中的“使用外部构建”框时,我解决了这个问题。

于 2016-08-10T16:42:03.320 回答
0

现在是 2021 年,在 Mac 中,使用 IntelliJ 运行 scala:

  • 核心逻辑
    • Macbrew install scala
    • IntelliJ: 打开 *.scala 文件,然后根据 auto config 的通知java JDKScala SDK
  • 详细步骤:请参考另一个帖子的答案
于 2021-03-10T08:45:12.780 回答
0

我是一个绝对的 Scala 初学者。我想站起来跑步。我需要创建一个 Scala项目,而不是一个带有 Scala 库的 Java 项目:

显示正确按钮的屏幕截图

于 2021-09-08T12:21:40.380 回答