【问题标题】:How to get jdb-like features (setting breakpoints or displaying vars) in sbt or REPL for Scala?如何在 Scala 的 sbt 或 REPL 中获得类似 jdb 的功能(设置断点或显示变量)?
【发布时间】:2015-03-23 12:57:49
【问题描述】:

有没有办法在 repl 或 sbt 会话中获得类似的功能,而不是打开 jdb?

我正在寻找的功能:

  • 定义断点的能力:
    • :bp mySource.scala:79 // 停在第 79 行 mySource.scala
    • :bp org.mycompany.MyClass:14 // 停在 myClass 的第 14 行(不知道是否有人支持这样的东西..)
  • 打印出变量
    • :p 我的列表
  • 评估表达式,包括 case 语句和闭包奖励分

【问题讨论】:

  • 在 sbt 中会给你带来什么?为什么您认为 sbt 会受益于该功能或使用 sbt 的用户以类似 jdb 的方式使用它?我宁愿认为 Scala REPL 不是 sbt 本身。
  • @JacekLaskowski 从标题中——无论是 sbt 还是 REPL——都没有说明是哪一个。
  • 当然,但你的问题让我想知道如果它可用,它如何在 sbt 中工作。你对此有什么想法吗?
  • sbt 的优点是它已经设置了类路径。我可以设想 sbt 调试。真的很方便

标签: scala debugging sbt read-eval-print-loop


【解决方案1】:

你不能保留一个好主意——请参阅线程A non-runaway-REPL?

也许它也可以使用“安全”模式来分叉一个 JVM。尽管 我们已经完成了,是时候执行调试命令了。

我不知道该命令应该被称为:forked:borked,还是简单地称为:wtf

【讨论】:

  • 该链接用于 control-C 处理。您是否打算发送其他链接?
  • @javadba 请参阅澄清编辑。我也不知道eclipse IDE中的“工作表”是否支持调试透视。可能“显然不是”,但这会很好。
  • 嗯,您的评论似乎表明目前“没有这样的运气”。我想会等着看你的答案是否是共识。无论如何感谢您的意见。
猜你喜欢
  • 2018-06-24
  • 2010-10-23
  • 1970-01-01
  • 1970-01-01
  • 2021-11-10
  • 1970-01-01
  • 1970-01-01
  • 2011-01-29
  • 1970-01-01
相关资源
最近更新 更多