将 sbt 用作 Metals 构建服务器
目标
我想在 VS Code 上使用 Metals,并以 sbt 作为构建服务器。
步骤
要在 VS Code 上使用 Metals:
- 在扩展视图安装 Metals:

- 打开包含
build.sbt文件的目录。 - 在菜单栏选择 查看 > 命令面板…(在 macOS 上为
Cmd-Shift-P),执行 "Metals: Switch build server",并选择 "sbt"

- 导入完成后,打开 Scala 文件以确认代码补全可用:

使用以下设置可使部分子项目不参与 BSP。
bspEnabled := false
修改代码并保存(在 macOS 上为 Cmd-S)时,Metals 会调用 sbt 执行实际构建。
登录 sbt 会话
在 Metals 以 sbt 作为构建服务器时,您还可以通过瘦客户端登录同一 sbt 会话。
- 在终端面板中输入
sbt --client

这样可登录 Metals 已启动的 sbt 会话。在其中可调用 testOnly 等任务,且代码已编译。