我从gradle命令行运行单元测试(因为从IntelliJ运行它们导致出于某种原因出现问题。)
所以我想从单元测试打开调试端口进行远程调试。我怎样才能做到这一点?有没有办法将-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y
发送到单元测试本身?我使用的是Gradle守护程序模式,所以我不确定这一切是如何工作的,也无法找到有关它的任何文档。
答案 0 :(得分:2)
实际上事实证明没有必要手动设置jvmArgs
。相反,您只需要调用(docs):
gradle someTestTask --debug-jvm
它将停止执行并等待调试器连接。现在当这个过程挂起时,转到IntelliJ,Eclipse(或其他IDE)并设置远程调试配置(记得设置源模块 - 红色箭头):
设置好之后,运行调试器就完成了。断点可以直接在IntelliJ中设置。
上面的答案如下:
test {
jvmArgs '-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y'
}