1

さて、私は netbeans でチャット クライアントを作成してきました。スタンドアロンでテストするために、クリーンアップしてビルドすることにしました。

ただし、ソケットを使用して他のプログラムからメッセージを受信すると (接続が成功すると)、プログラムは終了します。この問題は、IDE から直接実行した場合には発生しませんでした。

それで、私が疑問に思っているのは、プログラムがクリーンでjarに組み込まれた後、プログラムの動作が異なるかどうかです(明らかにそうですが、どのように?)。考慮しなければならない追加のことがありますか。例外とは、すべてが突然停止することを意味するのでしょうか?

また、ビルドされたjarでのみ発生するため、発生した可能性のある例外は表示されません。私はとても困惑しています...

4

3 に答える 3

1

答えが見つかるかどうかはわかりませんが、問題は私にとってのエンコーディングでした。いくつかのドキュメントを jar に読み込んでいましたが、それらのドキュメントにはトルコ語の文字を含む単語が含まれていました。JAR ファイルはこれらの単語を読み取ることができなかったため、プログラムはおかしな動作をしました。だから、代わりに

Reader chars = new InputStreamReader(bytes);

使った

Reader chars = new InputStreamReader(bytes, "UTF-8");

そしてそれは私の問題を解決しました。

乾杯!

于 2016-05-29T18:21:17.967 に答える
1

問題はエンコードにある可能性があります。私の NetBeans IDE は jar ファイルを起動します

-Dfile.encoding=UTF-8 -Djava.security.policy=applet.policy -classpath -Xmx512M -Xss64M

ご覧のとおり、UTF-8 エンコーディングを使用して jar を起動します。

于 2015-05-06T18:38:08.680 に答える