約 55 の Java インターフェイスと 5 つの抽象クラスがあります。各宣言は、同じジェネリック パラメーターのセットを使用します。約 60 の宣言がリストされているため、各実装は他の実装の特定の型を認識し、メソッド パラメーターでこの型を置き換えて、必要に応じて返します。このジェネリックの (おそらく過剰な) 使用が、コンパイラのハングを引き起こしているようです。コンパイラは OutOfMemoryError をスローしますが、終了しているようには見えません。
私の状況を考えると、これらの宣言の 1 つでも含むコード リストは少し難しいですが、リストの一部は可能かもしれません。インターフェイス宣言では通常、約 5 つのメソッドのコレクションを指定しますが、宣言でジェネリックを使用すると、ソース モジュールのサイズが約 1,000 行に増加します。
私のケースは、コンパイラが実際に無限ループに入るケースでしょうか、それとも単にメモリを増やすべきですか? OutOfMemoryError 例外がスローされるまでに約 20 分かかるため、コンパイラに与えるメモリを倍増させると、コンパイラが例外をスローするのにその倍の時間がかかるだけではないかと懸念しています。
エディタ環境として NetBeans を使用していますが、NetBeans を起動したらすぐにクリーン/ビルド スクリプトを実行することに頼っています。これを行うのは、起動後にコードの構文をチェックし始めると、NetBeans がすぐに応答しなくなるためです。私はUbuntu 10.4を使用しています(私はWindowsからこれを書いていると思います)。私は、Ubuntu 環境でコマンド ラインを開き、NetBeans をバックグラウンド プロセスとして実行し、出力をチェックして、gedit を使用してソース コードの誤りを修正し、NetBeans を強制終了してから再起動することにしました。構文エラーが発生していないことがわかるまでは、これで十分のように見えました。コマンド ラインから clean/build スクリプトを実行する方法がわかりません。
この質問があいまいに見える場合は申し訳ありませんが、他の人が私を助けることができれば、もう少し具体的にすることができます.
考慮されたアドバイスをありがとう。