4

jconsoleをリモートサーバーに接続しようとしています。

これをcatalina.shに追加しました:

export JAVA_OPTS="-Dcom.sun.management.jmxremote \
    -Dcom.sun.management.jmxremote.port=9005 \
    -Dcom.sun.management.jmxremote.ssl=false \
    -Dcom.sun.management.jmxremote.authenticate=false \
    -Djava.rmi.server.hostname=xx.xx.xx.xx"

catalina.outショー:

Error: Exception thrown by the agent : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: myhostname: myhostname

エラーメッセージでホスト名が繰り返される理由がわかりませんか?

ところで、認証をfalseに設定したので、jconsoleアプリで、ユーザー名/パスワードを空白のままにしますか、それともサーバーにログインするためのものですか?

4

5 に答える 5

14

/etc/hostsファイルで定義したのと同じホスト名をファイルに追加する必要があり/etc/sysconfig/networkます。これが私の問題を解決した方法です。

于 2012-08-24T15:09:16.093 に答える
3

この問題の解決策を見つけました。catalina.shファイル に次を追加します。

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port= 7010 -Djava.rmi.server.hostname=${IP}"

/etc/init.d/hostsまた、ファイル に次の行を追加します。

127.0.0.1 localhost <your_hostname>

これで問題は解決しました。現在、このポートjconsoleと同様に実行できます。 これが役立つことを願っています!jvisualvm

于 2013-02-07T08:47:39.840 に答える
2

IPアドレスを動的に取得したい場合は、次を試すことができます:

IP=`ifconfig  | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'`
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.ssl=false  -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=${IP}"
于 2012-07-11T02:02:42.237 に答える
1
  1. 「export」ステートメントで「\」を使用する場合は、それらを削除してください。

  2. リモート Java プロセスに接続するには、Java プロセス (Tomcat インスタンス) が実行されているサーバーの IP アドレスを使用します。IP アドレスを判別できなかった場合は UnknownHostException がスローされるため、名前と IP アドレスの定義をホスト ファイルに追加するという別のオプションがあります。

于 2011-12-23T21:51:16.473 に答える
0

JAVA_OPTS に追加したパラメーターを CATALINA_OPTS に追加してみてください。そのように動作するはずです。
また、Tomcat を実行している場所と同じプロファイル ログインで設定を行っていることを確認してください。

于 2013-02-04T08:16:46.230 に答える