Auch Java-Programme müssen manchmal mit Systemmitteln beendet werden. Dafür benötigt man die Prozess-ID PID. Diese kann beispielsweise auf einem UNIX oder LINUX-System mit dem Befehl ps angezeigt werden. Aber der Befehl führt oft nicht zum gewünschten Ergebnis:
> ps -A |grep java
2016 ? 2:41 java
5875 pts/2 0:05 java
29278 ? 2:42 java
26519 ? 0:23 java
26623 ? 0:28 java
26480 ? 0:24 java
26146 ? 2:36 java
26568 ? 0:24 java
26668 ? 0:34 java
26667 ? 1:10 java
5588 pts/2 4:07 java
26145 ? 0:10 java
Um herauszufinden, welcher Java-Prozess beendet werden soll bietet sich der Befehl <JAVA_HOME>/bin/jps an:
> /opt/java/jdk1.5/bin/jps
5996 Jps
26667 jar
5588 start.jar
5875 Main
29278 start.jar
5995 Main
Mehr Informationen erhält man mit den Optionen -v für die Argumente und -l für den Package Namen der Main-Klasse.
> /opt/java/jdk1.5/bin/jps -lv
6160 sun.tools.jps.Jps -Dapplication.home=/opt/regr/java/jdk1.5 -Xms8m
26667 XyzServer.jar
29278 /opt/jetty7.1.6/start.jar -Xmx1024M -Xms512M -Djetty.port=8080 -DSTOP.PORT=8079
Jetzt weiß ich das zu meinen Jetty-Server (mit Port 8080) die PID 29278 gehört!
> kill -9 29278
Und weg ist er!
Keine Kommentare:
Kommentar veröffentlichen