使用IntelliJ调试Gradle Execute Task

时间:2015-02-08 15:28:17

标签: intellij-idea gradle

我有以下Gradle任务:

task execute(type:JavaExec, dependsOn:['build']) {
    main = 'com.something.Main'
    classpath = sourceSets.main.runtimeClasspath
}

当我在IntelliJ中调试任务时,我收到以下错误:

ERROR: transport error 202: connect failed: Connection refused
FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [debugInit.c:750]
:execute FAILED

2 个答案:

答案 0 :(得分:2)

在使用Gradle Test运行器时,似乎更高版本的IntelliJ Idea无法将调试器连接到分叉测试运行器。

在您的来源根目录中,添加一个gradle.properties文件,其中包含以下两行:

maxTestForks = 1
testForkEvery = 0

那应该做的。

答案 1 :(得分:0)

我有一个非常类似的问题。当我在IntelliJ中调用Gradle时,默认情况下Java环境包含

JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,address=127.0.0.1:59842,suspend=y,server=n

我从环境中删除了JAVA_OPTS并且,不再有JDWP错误,因为没有更多的JDWP。