Tomcat Autostart ignorieren jpda option für debug
Ich bin versucht zu laufen, Tomcat 7 im debug-Modus. Wenn ich Typ ./catalina.sh jpda start
tomcat läuft, als ob die jpda-option ist nicht da-und Ausgänge:
Michaels-MacBook-Pro:bin clairewilgar$ ./catalina.sh jpda start
Using CATALINA_BASE: /Users/clairewilgar/Downloads/apache-tomcat-7.0.42-MIS
Using CATALINA_HOME: /Users/clairewilgar/Downloads/apache-tomcat-7.0.42-MIS
Using CATALINA_TMPDIR: /Users/clairewilgar/Downloads/apache-tomcat-7.0.42-MIS/temp
Using JRE_HOME: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Using CLASSPATH: /Users/clairewilgar/Downloads/apache-tomcat-7.0.42-MIS/bin/bootstrap.jar:/Users/clairewilgar/Downloads/apache-tomcat-7.0.42-MIS/bin/tomcat-juli.jar
und ändert nichts an meiner CATALINA_OPTS oder nichts. Wenn ich versuche eine Verbindung über Eclipse bekomme ich die Fehlermeldung
'Start workflow' hat ein problem festgestellt. Fehler beim herstellen einer Verbindung zu remote-VM. Verbindung verweigert.
Ich habe versucht, die änderung der port jpda port 8001 bis gar keinen Erfolg, ich habe versucht, die Deklaration der JPDA-Optionen im terminal, vor dem Aufruf catalina.sh aber das macht keinen Unterschied. Meine catalina.sh JPDA-Linien sind wie folgt:
if [ "$1" = "jpda" ] ; then
if [ -z "$JPDA_TRANSPORT" ]; then
JPDA_TRANSPORT="dt_socket"
fi
if [ -z "$JPDA_ADDRESS" ]; then
JPDA_ADDRESS="8000"
fi
if [ -z "$JPDA_SUSPEND" ]; then
JPDA_SUSPEND="n"
fi
if [ -z "$JPDA_OPTS" ]; then
JPDA_OPTS="-agentlib:jdwp=transport=$JPDA_TRANSPORT,address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND"
fi
CATALINA_OPTS="$CATALINA_OPTS $JPDA_OPTS"
shift
fi
Gibt es andere Gründe, warum JPDA möglicherweise nicht ausgeführt? Ich bin mit OSX (Mountain Lion), ob es etwas gibt damit zu, dass ich vielleicht vergessen habe. Vielen Dank im Voraus.
EDIT: Meine catalina.die out-Datei zum ausführen ./catalina.sh jpda start
ist bei http://pastebin.com/Z4GSvckr
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gleiche Problem, wenn Sie starten es von
startup.sh
? Denken Sie daran, die Sie haben könnten, zu Bearbeitenstartup.sh
zu machen, rufen Siecatalina.sh
mit derjpda
parameter.Haben Sie versucht, setzen Sie die Variablen manuell? Ich hatte nie dieses Problem an meinem Ende, aber ich Neige dazu, etwas zu tun, wie beschrieben, in diesem wiki.
Auch, ob die Variablen bereits gesetzt sind, in Ihrem Umfeld, Sie werden nicht wieder in den
catalina.sh
Skript (-z
).Könnte man auch versuchen
setup.sh
imbin
Ordner mit:Mit dieser änderung können Sie einfach starten Sie tomcat verwenden
startup.sh start
.logs/catalina.out
sagen?tomcat 7.0.42
(Windows-x86 ausgeführt in cygwin) und es funktioniert gut. Beide mitjpda start
und die Einstellung des env-Variablen insetup.sh
und starten Sie es einfach mitstartup.sh start
. Hat einer Vanille-tomcat für Sie arbeiten? Nichts zusätzliches bereitgestellt.echo $CATALINA_OPTS
vor dem Start der JVM incatalina.sh
(um Zeile 386 glaub ich) und sehen, was es sagt?-Dorg.apache.el.parser.SKIP_IDENTIFIER_CHECK=true
setenv.sh
Lösung und setze meine Variablen in der es, sofern Sie es getestet? Es ist wirklich seltsam, die Sie nicht bekommen, die JPDA-option in die Ausgabe. Leider habe ich keinen Zugriff auf einen mac zu testen, diese auf.setup.sh
in der Antwort, da es einfacher zu Lesen.Kann es sich um eine IPv4 vs IPv6-Problem.
Ich hatte mal ein problem wo ich es konnte keine Verbindung zu "localhost" port 13306, konnte aber eine Verbindung zu "127.0.0.1" port 13306
localhost zugeordnet ist, um eine IPv6-Adresse, während der Prozess überwacht wurde, um eine IPv4-Adresse
können Sie ändern Sie diese Zeile in die catlina.sh:
zu :
oder setzen der env-var "JPDA_SUSPEND" auf "y" - vor dem Aufruf der catalina.sh
Ich hatte das gleiche problem, es stellte sich heraus, meine startup.sh die Datei enthielt die folgenden Zeilen:
Daher Befehl ./startup.sh jpda start geschickt wurde catalina.sh als start jpda start und deshalb debugging-Optionen wurden ignoriert, so musste ich ändern Sie diese Zeile zu
Grüße,
Borys
Ändern Sie die Letzte Zeile dieser Datei:
"startup.sh"
("startup.bat"
wenn Sie mit Windows)Statt dieser:
Verwenden: