I Jetty von der Kommandozeile mit:Debug gradle jettyRun in IntelliJ
export GRADLE_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=9999,server=y,suspend=n"
gradle jettyRun
und sehen:
Listening for transport dt_socket at address: 9999
... dann in IntelliJ Idea (Ultimate 12.1.3) Ich erstellen neue Debug-Remote-Konfiguration mit allen Standardeinstellung, nur den Port 9999.
ÄndernWenn ich (debug) mit der Remote-Konfiguration starten, ich sehe:
Connected to the target VM, address: 'localhost:9999', transport: 'socket'
... was mich denken lässt, alles funktioniert wie erwartet.
Dann mache ich Anfragen, die dazu führen sollten, Breakpoints zu treffen. Die Haltepunkte werden jedoch nie ausgelöst.
Was mache ich falsch?
Danke.
Eine Theorie ist, dass ich sagen kann * Gradle * und nicht * Jetty * einen Debug-Port offenlegen. Und wenn Sie sich die JettyRun-Dokumentation ansehen, gibt es möglicherweise keine Möglichkeit, dies zu tun. http://www.gradle.org/docs/current/dsl/org.gradle.api.plugins.jetty.JettyRun.html#org.gradle.api.plugins.jetty.JettyRun:jettyConfig ... Suche in Lösung mit das Cargo-Plugin. Wie auch immer, wenn ich das Tomcat-Plugin ansehe, scheint das, was ich tue, korrekt zu sein: https://github.com/bmuschko/gradle-tomcat-plugin –
Ihre Lösung funktioniert für mich. Ich benutze Gradle 1.5. Ihre obige Lösung ist die gleiche mit http://stackoverflow.com/questions/9315398/how-to-run-jetty-via-gradle-in-debug-mode. – ceilfors
Wenn Sie mit der Ziel-VM verbunden angezeigt werden, Adresse: 'localhost: 9999', Transport: 'socket' bedeutet, dass Sie verbunden sind. Ich werde system.out hinzufügen, um auszuschließen, dass Sie die Breakpoints nicht auslösen –