2

申し訳ありません。何が起こっているのかまったくわからないので、これは非常に漠然とした質問です。NetBeans で作成した Java Swing GUI デスクトップ アプリケーションがあります。NetBeans 内では、アプリは問題なく動作し、私が投げたすべてのテストに合格しました。私は過去数か月にわたってこのアプリを開発し、開発のさまざまな段階で展開してきました。

昨日、いくつかの新しい機能の追加とテストを完了しました。アプリケーションをビルドし、別のコンピューターに配置しました。次に、jar ファイルから直接 (NetBeans の外部で) プログラムを実行しました。新しい領域 (JDialog ボックス) では、プログラムがクラッシュします。私は IDE を使用していないため、何が問題なのかを確認するためのフィードバックはありません。

私が考えることができる唯一のこと (そしてこれは不十分です) は、文字列をオンにする switch ステートメントをいくつか追加したことです。これは 1.7 の新機能です。以前は1.6で開発していました。それ以外の場合、プログラムが IDE 内で問題なく動作するはずなのに、IDE の外でクラッシュする理由が思い浮かびません。

これにどのようにアプローチするべきかについて、誰かが提案できますか? 私は完全に途方に暮れています。

どうもありがとう。

4

2 に答える 2

1

次のデバッグ手順は、プログラムがクラッシュしなくなるまでプログラムのサイズを縮小し、行った変更が機能するかどうかを確認することです。これにより、答えが明確になるか、SOに投稿するのに適した質問が得られます。

switch ステートメントに関係している可能性があるというあなたの考えは、次のことを試してください。

  • それらを削除する
  • JDK 6を削除してコンパイルし、動作するかどうかを確認します

これらは、プログラムのサイズを縮小して実行できるかどうかを確認する合理的な方法です。

于 2013-02-24T00:40:11.953 に答える
1

クラッシュ ダンプ データの収集から始めます。WindowsでUIを実行する場合、DrWatsonを使用できます

Linux で UI を実行する場合、デフォルトでは、VM の作業ディレクトリにある java_pidpid.hprof というファイルにヒープ ダンプが作成されます。-XX:HeapDumpPath= option これをUI Javaオプションに追加して自分でパスを指定しない限り。

于 2013-02-24T00:50:40.247 に答える