11

我想用 vscode 调试我的 scala 应用程序。

我的 gradle 运行任务看起来很简单:

task run(type: JavaExec, dependsOn: build) {
    debug true
    main = mainClassFile
    classpath sourceSets.main.runtimeClasspath
    classpath configurations.runtime
}

启动条目:

{
    "type": "java",
    "name": "Debug (Attach)",
    "request": "attach",
    "hostName": "localhost",
    "port": 5005
 }

现在,当我启动调试器时,它会等待 vscode 客户端。但是我无法在 vscode 中设置任何断点来停止调试器。现在它运行到最后,在 vscode 连接之后。

我正在使用Scalaand Scala Language Server

有人知道如何添加断点吗?

4

1 回答 1

2

Scala Metals 的最新版本 (0.8.0)具有调试支持- 该版本有一个动画显示在 Visual Studio Code 中调试的用法,其工作方式与在其他语言中调试的方式相同。

这是初始支持,因此可能不支持某些情况(请参阅 Metals 0.8.0 发行说明中的​​“已知限制”),但您应该能够开始使用它们。

在那之前,Scala Metals 根本不支持调试,建议每个编写 Scala 的人都需要这种功能,使用带有 Scala 插件的 IntelliJ。

于 2020-02-12T10:22:50.463 回答