6

私はTomcatを初めて使用し、jprofilerでTomcatを構成しました。しかし、Tomcat サーバーを停止できず、次のエラー メッセージが表示されます。

[root@localhost bin]# service tomcat stop 
Stopping .
Using CATALINA_BASE:   /data/applications/apache-tomcat-6.0.26
Using CATALINA_HOME:   /data/applications/apache-tomcat-6.0.26
Using CATALINA_TMPDIR: /data/applications/apache-tomcat-6.0.26/temp
Using JRE_HOME:        /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0
Using CLASSPATH:       /data/applications/apache-tomcat-6.0.26/bin/bootstrap.jar
JProfiler> Protocol version 35
JProfiler> Using JVMTI
JProfiler> JVMTI version 1.1 detected.
JProfiler> 32-bit library
JProfiler> Listening on port: 8849.
JProfiler> Instrumenting native methods.
JProfiler> Can retransform classes.
JProfiler> Can retransform any class.
JProfiler> Native library initialized
JProfiler> VM initialized
JProfiler> Waiting for a connection from the JProfiler GUI ...
JProfiler> ERROR: Could not bind socket.
\n\nTomcat has shutdown

構成の何が問題なのかわかりません。はい、ボックスでファイアウォールが無効になっています。

[root@localhost bin]# service iptables status
Firewall is stopped.
4

3 に答える 3

9

tomcat PID の実行を見つけるには:

ps -ef | grep tomcat

次に、次のコマンドを使用します。

kill -9 PID

または、1 つのコマンドで:

kill -9 $(ps -ef | grep tomcat | grep -v "grep" | awk '{print $2}')

別のこととして、Tomcat をバックアップし続けるウォッチドッグを実行している場合があります。そのような場合は、ウォッチドッグもオフ (または強制終了) する必要があります。

于 2012-08-08T19:11:12.057 に答える
0

Tomcat スクリプトに JProfiler エージェントをロードするための VM パラメータを挿入しました。JProfiler エージェントは、特定のポート (デフォルトでは 8849) で受信接続をリッスンできることを想定しています。ポートは実行中の Tomcat によってすでに使用されています。tomcat スクリプトを再度開始すると、プロファイリング エージェントを初期化できなかったため、JVM の初期化が失敗します。

Tomcat 起動スクリプトからJVM パラメータを削除する-agentlib:[path to jprofilerti.dll]か、「停止」コマンドに適用されないように条件付きにする必要があります。

于 2012-08-09T13:26:14.410 に答える