Wie starte ich den Debug-Modus an der Eingabeaufforderung für den Apache Tomcat-Server?

84

Ich möchte den Debug-Modus für meine Anwendung starten. Aber ich muss den Debug-Modus an der Eingabeaufforderung starten. Ist es möglich ? Und wird das Verfahren zwischen Tomcat 5.5 und Tomcat 6 variieren?

Karthi
quelle
6
Catalina.bat Jpda Start
Sanbhat
1
Mögliches Duplikat von Start Tomcat 6 im Debug-Modus?
Makoto

Antworten:

119
Auf Fenstern
$ catalina.bat jpda start
Unter Linux / Unix
$ catalina.sh jpda start

Weitere Informationen unter ----> https://cwiki.apache.org/confluence/display/TOMCAT/Developing

Mohammad Adil
quelle
Vielen Dank, dies hat mir geholfen, die Debug-Option in einzurichten startup.sh. Bearbeiten der letzten Zeile tomcat/bin/startup.shzu exec "$PRGDIR"/"$EXECUTABLE" jpda start "$@". Ich vergesse immer, im Debug-Modus zu starten und kann einen 5-minütigen Neustart speichern.
TomasZ.
51

Für Windows zuerst Variablen setzen:

set JPDA_ADDRESS=8000
set JPDA_TRANSPORT=dt_socket

So starten Sie den Server im Debug-Modus:

%TOMCAT_HOME%/bin/catalina.bat jpda start

Für Unix erste Exportvariablen:

export JPDA_ADDRESS=8000
export JPDA_TRANSPORT=dt_socket

und um den Server im Debug-Modus zu starten:

%TOMCAT_HOME%/bin/catalina.sh jpda start
krzysiek.ste
quelle
ähm ja, obwohl 8000 und dt_socket in Catalina.bat als Standardwerte erwähnt werden, müssen Sie sie tatsächlich wie im obigen Beitrag
festlegen
auf den Punkt Antwort und es hat bei mir funktioniert +1. hat meinen Tag gerettet
Joginder Malik
25
  1. Erstellen Sie in Ihrer IDE eine Remote-Debug-Konfiguration und konfigurieren Sie sie für den Standard-JPDA-Tomcat-Port, Port 8000.

  2. Über die Befehlszeile:

    Linux:

    cd apache-tomcat/bin
    export JPDA_SUSPEND=y
    ./catalina.sh jpda run
    

    Windows:

    cd apache-tomcat\bin
    set JPDA_SUSPEND=y
    catalina.bat jpda run
    
  3. Führen Sie die Remote-Debug-Konfiguration von Ihrer IDE aus aus, und Tomcat wird ausgeführt, und Sie können jetzt Haltepunkte in der IDE festlegen.

Hinweis:

Die JPDA_SUSPEND=yZeile ist optional. Sie ist hilfreich, wenn Apache Tomcat erst nach Abschluss von Schritt 3 ausgeführt werden soll. Dies ist hilfreich, wenn Sie Probleme bei der Anwendungsinitialisierung beheben möchten.

Jaime Hablutzel
quelle
14

Eine kurze Antwort besteht darin, die folgenden Optionen hinzuzufügen, wenn die JVM gestartet wird.

JAVA_OPTS=" $JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8080"
Marcel Zebrowski
quelle
Wenn Sie JAVA_OPTS -Xdebug verwenden, müssen Sie Catalina nicht mit jpda starten. Andernfalls könnten Sie mit diesem ERROR: Cannot load this JVM TI agent twice, check your java command line for duplicate jdwp options.
enden
4

Navigieren Sie zunächst zum TOMCAT-HOME/binVerzeichnis.

Führen Sie dann in der Befehlszeile Folgendes aus:

catalina.bat jpda start

Wenn der Tomcat-Server unter Linux ausgeführt wird, rufen Sie einfach das catalina.shProgramm auf

catalina.sh jpda start

Dies gilt auch für Tomcat 5.5 und Tomcat 6

Konstantin Yovkov
quelle
Können Sie mir das Äquivalent von Tomcat 7.0 sagen?
RAS
3

Diese Anleitung funktionierte für mich unter Apache-Tomcat-8.5.20 unter Mac OS 10.13.3 mit jdk1.8.0_152:

$ cd /path/to/apache-tomcat-8.5.20/bin
$ export JPDA_ADDRESS="localhost:12321"
$ ./catalina.sh jpda run

Stellen Sie nun von IntelliJ / Eclipse aus eine Verbindung zu Port 12321 her und genießen Sie das Remote-Debugging.

user674669
quelle
2

Es gibt zwei Möglichkeiten, Tomcat im Debug-Modus auszuführen

  1. Mit jdpa ausführen

  2. Verwenden von JAVA_OPTS

Richten Sie zuerst die Umgebung ein. Starten Sie dann den Server mit den folgenden Befehlen.

export JPDA_ADDRESS=8000

export JPDA_TRANSPORT=dt_socket

%TOMCAT_HOME%/bin/catalina.sh jpda start

sudo catalina.sh jpda start

Weitere Informationen finden Sie in diesem Artikel. Dies ist eine klare Definition

TharinduKetipe
quelle
1

Wenn Sie dies über Powershell unter Windows tun möchten, hat dies bei mir funktioniert

$ env: JPDA_SUSPEND = "y"

$ env: JPDA_TRANSPORT = "dt_socket"

/path/to/tomcat/bin/catalina.bat jpda start

MarkyMarksFunkyBunch
quelle
0

Legen Sie in Catalina.bat den Port fest, an dem Sie den Debugger starten möchten

if not "%JPDA_ADDRESS%" == "" goto gotJpdaAddress
set JPDA_ADDRESS=9001

Dann können Sie den Debugger einfach mit starten

catalina.bat jpda 

Wählen Sie nun in Eclipse oder IDEA Remote-Debugging aus und starten Sie das Debugging, indem Sie eine Verbindung zu Port 9001 herstellen.

Aniket Thakur
quelle