IntelliJ IDEA 2025.3 Help

Scala 工作表、Scala REPL 和 Ammonite

您可以使用 Scala 工作表、Scala REPL 或 Ammonite 快速评估和运行 Scala 代码。

Scala REPL 在 IntelliJ IDEA 和 Scala 工作表中都使用 Scala 编译器中的 Scala REPL。 因此,您可以使用 Scala worksheet 而不是 Scala REPL 来评估表达式。

由于在 IntelliJ IDEA 中 Scala 工作表和 Ammonite 文件具有相同的文件扩展名 .sc ,您需要告诉 IntelliJ IDEA 如何在项目中处理这些文件。

  1. 在 设置 对话框(Ctrl+Alt+S ),转到 语言与框架 | Scala。

  2. 在 工作表 选项卡上,在 将 .sc 文件视为 字段中,默认选择 始终是工作簿 选项。

    选择 永远 Ammonite 以支持 Ammonite。

    您还可以选择 测试源中的 Ammonite,其他情况为 Worksheet 选项,仅将测试文件视为 Ammonite。

    Scala 工作表设置
  3. 请保存您的更改。

在设置中,您还可以设置输出限制,指定您想要以何种模式运行 worksheet 或 Ammonite script,或者配置您希望 IntelliJ IDEA 如何处理 .sc 和临时文件。

创建一个 .sc 文件

  1. 右键点击您的项目并选择 新建 | Scala 工作表。 我们建议您在 .sc 文件夹中创建一个 src 文件,以避免代码高亮问题。

  2. 在 新的 Scala 工作表 窗口中,输入文件名并点击 OK。

    结果,具有 .sc 扩展名的文件打开。 根据 文件配置 ,它被视为 Scala worksheet 或 Ammonite。

使用 Scala 工作表运行 Scala 代码

  1. 创建一个 Scala worksheet文件并在编辑器中打开。

    Scala 工作表
  2. 添加您的代码。

    除了代码补全和字符串格式化等标准操作外,IntelliJ IDEA 还支持以下操作:

    • 评估 Scala 对象

    • 在不影响左侧代码的情况下折叠输出,并且仅展开与特定语句匹配的输出块。

      Scala 工作表 - 展开的结果
  3. 点击 运行按钮 查看结果。

启动 Scala REPL

  1. 您可以通过按下 Scala REPL 来打开。 Ctrl+Shift+D 或者您可以在 工具 菜单中找到它。

    工具窗口中的 Scala REPL

    您也可以打开 操作 选项卡在 随处搜索 窗口,开始输入 Scala REPL ,然后从搜索结果中选择它。

    随处搜索
  2. 要运行您项目中的方法,请导入给定的类或模块,并调用它,就像编写常规代码一样。

  3. 在 运行 工具窗口中检查结果。

    Scala REPL

使用当前工作表设置

  1. 在编辑器中打开一个 Scala 工作表文件。 点击 "设置"图标 工作表编辑器工具栏上的 工作表设置 对话框。

  2. 在 工作表设置 对话框中,配置当前工作表设置或整个项目的默认工作表设置,默认设置将影响其他工作表。

    sc_ws_settings.png
  3. 请使用以下选项进行配置:

    • 交互模式 :选择此复选框以自动显示结果。

    • 创建项目 :清除此勾选框以禁用项目变更的自动检查,从而提高评估性能。

    • 运行类型 :从此列表中选择合适的评估模式。 例如,选择 REPL类型以快速评估 Scala 表达式。 当您添加新表达式时,它们会被逐步执行。

    • 使用模块的 class path :此字段已被禁用,因为该工作表是一个文件,您可以在其他项目之间共享,并且应保留在创建它的位置。 您可以在默认设置中更改其位置,但它将应用于整个项目,并影响其他工作表。

      如果您需要更改类路径,我们建议您创建并使用 scratch file。

      sc_scratch_file.png
    • 编译器配置文件 :在此字段中选择您的工作表的编译器配置文件。 从列表中选择一个或点击 "设置"图标 访问 Scala 编译器设置以获取更多选项。

在 IntelliJ IDEA 中配置 Ammonite 支持

  • 根据您的项目,执行以下操作:

    • 如果您有一个 sbt project ,请将以下代码添加到 build.sbt 文件:

      libraryDependencies += "com.lihaoyi" %% "ammonite" % "2.5.11" % "test" cross CrossVersion.full sourceGenerators in Test += Def.task { val file = (sourceManaged in Test).value / "amm.scala" IO.write(file, """object amm extends App { ammonite.Main.main(args) }""") Seq(file) }.taskValue

      刷新项目以导入更改。

    • 如果您有一个常规的 Scala 项目,请下载 Ammonite 并指定其可执行文件的位置。 例如,您可以修改 $path 变量或在默认的 Ammonite 运行/调试配置 中指定路径,在 Amm 可执行文件 字段中。

使用 Ammonite 运行 Scala 脚本

  1. 创建一个 Ammonite file 并在编辑器中打开。

  2. 添加您的代码。

    除了标准的代码补全和导入操作,IntelliJ IDEA 还支持以下 Ammonite 特定的操作:

    • 对于 Ammonite 特定命令的代码补全

      Ammonite 特定命令
    • 对其他 Ammonite 文件的代码引用以及代码完成

      Ammonite 文件参考
  3. 在左侧界栏中,点击 运行图标 并选择 运行脚本 以在 运行 工具窗口中查看结果。

    或者,您可以创建并运行一个 Ammonite run/debug configuration。

2026年 1月 23日