1

Solaris OS で Java を使用してリモート デバッグを実行しようとしています。以下は私が試したことです-

main メソッドを持つ TestP という Java クラスがあります。

java -classpath を試すと。テストP

プログラムは正常に動作します。しかし、デバッグパラメータをJVMに追加しようとすると-

java -Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n -classpath . テストP

このエラーが発生して失敗します-

UTF エラー ["../../../src/solaris/npt/utf_md.c":49]: iconv_open() セットアップの完了に失敗しました

このエラーが発生する理由を理解するのを手伝ってくれる人はいますか?? 上記は私のLinuxボックスでうまく動作します。

Solaris 上の Java バージョン: Java(TM) SE ランタイム環境 (ビルド 1.6.0_15-b03) Java HotSpot(TM) クライアント VM (ビルド 14.1-b02、混合モード)

Linux 上の Java バージョン: Java バージョン "1.6.0_0" OpenJDK ランタイム環境 (IcedTea6 1.5) (fedora-20.b16.fc10-i386) OpenJDK サーバー VM (ビルド 14.0-b15、混合モード)

4

3 に答える 3

2

トラスを使用して、プロセスが/usr/lib/iconv/geniconvtbl/binarytables/UTF-8%646.btおよび646%UTF-8.btを探していることがわかったので、ISO8859-1%ISO646.btをにコピーしました。 UTF-8%646.btおよびISO646%ISO8859-1.btから646%UTF-8.bt(はい、「ISO646」ではなく「646」です!)

もちろん、これは非常に醜い回避策であり、JVMに悪影響があるかどうかはわかりませんが、少なくとも、JVMを中止せずに起動します。(私はOpenSolaris 2009.06でこれを行いました、ところで)

于 2011-10-11T11:24:57.363 に答える
2

うーん...これは、Java の問題ではなく、Java 6 の既知の Solaris (Solaris 10 固有ではない) の問題のようです (このスレッドを参照してください)。

Sun の担当者である Jeff Moguillanskyによる回避策 (このブログ投稿を参照) の適用に成功した人がいますが、私はそれをお勧めしません。むしろ、Sun のフォーラムで示されているように、sunsolve でパッチを検索することを検討してください。

これを見てください: http://sunsolve.sun.com/search/document.do?assetkey=1-1-6586755-1 (有効なサポート契約またはソフトウェア サブスクリプションのある Sun オンライン アカウントが必要です)。

于 2009-11-13T14:32:31.460 に答える
0

Pascal Thiventが正しければ、OpenSolarisを(空のマシンまたは仮想マシンで)実行してみて、問題が発生するかどうかを確認することをお勧めします。そうでない場合は、可能であれば、今のところそのバージョンの使用を検討してください。

于 2009-11-13T18:37:34.040 に答える