我正在尝试Scala Web框架Scalatra。根据here文档,启用IntelliJ调试的步骤为:
"-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"
sbt
,运行jetty:start
,然后启动远程调试器当我这样做时,SBT会打印出:
Listening for transport dt_socket at address: 5005
和IntelliJ打印:
Connected to the target VM, address: 'localhost:5005', transport: 'socket'
但是,断点似乎不起作用。当我命中以下端点时,在
*
处有一个断点:class AppServlet extends AppStack {
get("/break-test") {
* val response = "DONE"
response
}
}
该代码不会在该行停止,而是继续,因此我得到了响应
DONE
。我正在使用Java 1.8.0_111,Scala 2.12和SBT 0.13.15。
最佳答案
这是我用于远程调试的内容:
-agentlib:jdwp = transport = dt_socket,server = y,suspend = n,address = 5005。
您在答案中使用的上面的值-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
在For JDK 1.4.x
字段中使用。