我想完成运行等效的
sbt -jvm-debug 5005
但是我似乎无法在Windows中传递args。这就是我所看到的
>sbt -jvm-debug 5005
[info] Loading project definition from [myProject]
[info] Set current project to [myProject] (in build file myProject)
[error] Expected letter
[error] Expected symbol
[error] Expected '!'
[error] Expected '+'
[error] Expected '++'
[error] Expected ';'
[error] Expected end of input.
[error] Expected 'show'
[error] Expected '*'
[error] Expected '{'
[error] Expected project ID
[error] Expected configuration
[error] Expected key
[error] 5005
[error] ^
[error] Not a valid command: jvm-debug
[error] Not a valid project ID: jvm-debug
[error] Expected ':' (if selecting a configuration)
[error] Not a valid key: jvm-debug
[error] jvm-debug
[error] ^
我希望能够从Intellij远程调试此应用程序。任何帮助都会很棒!
答案 0 :(得分:11)
set SBT_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
sbt run
是Windows 7上唯一可行的解决方案。
答案 1 :(得分:9)
似乎Windows版本的SBT没有定义此功能。
在Linux上,它在$SBT_HOME/sbt/bin/sbt-launch-lib.bash
中定义为
addDebugger () {
addJava "-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=$1"
}
通过在Windows上设置SBT_OPTS
环境变量,您可以获得相同的结果。
像这样运行SBT,使调试器侦听端口5005
set SBT_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005" && sbt
答案 2 :(得分:1)
当前,我下载了最新更新的sbt,确切是sbt 1.3.3,但是当我想在项目中启用调试时,我遇到了与您相同的问题。调查中,我发现我自己的根目录C:\ Program Files(x86)\ sbt \ bin中没有此文件(sbt-launch-lib.bash),所以当我在另一台计算机上看到该文件时,我会注意到该sbt ,它是1.2.8,是的,它具有我之前提到的文件,因此我卸载了sbt 1.3.3并安装了sbt 1.2.8并将其放入我的项目sbt -jvm-debug 9999中。