2011-09-10 10 views
2

私のプログラムには、ClassCastExceptionがスローされるバグがありました。この例外が発生したプログラムの行を省略し、少し変更を加えましたが、実行するたびにClassCastExceptionがスローされ、プログラムの古いバージョンが実行されているように見えます。 stacktraceは、プログラム内に存在しない行を参照しています!Eclipseが私のJavaプログラムの古いバージョンを実行しているのはなぜですか?

これは何故でしょうか? Eclipseの再起動は役に立ちませんでした。

+0

どのように正確に実行していますか?たとえば、Antターゲットからビルドされたクラスファイルを実行していますか? –

+4

*プロジェクト>クリーン*? – BalusC

+0

@BalusCちょうどProject> Cleanを実行しましたが、今はNoClassDefFoundErrorを取得しています。これがなぜなのか? – neptune

答えて

4

構文エラーのためにEclipseがクラスをコンパイルできない場合、Eclipseは最新のコンパイル可能なバージョンを使用して現在のものが修正されるまで実行します。

4

これらのケースでは、ビルドをクリーンアップすることが役立つ傾向があります。プロジェクトに移動し、きれいにします。表示されるダイアログでは、何をクリーニングするかを選択できます。 Clean allは依存関係の問題も解決します。

+0

うーん、私はこれを試しましたが、EclipseはNoClassDefFoundErrorを投げています!理由は何ですか?私は直接ビルドパスに囲まれたプロジェクトを追加し、まだエラーがスローされます... – neptune

+0

あなたのビルドは実際にきれいですか? NoClassDefFoundErrorは、通常、クラスがそこにないことを意味します。 –

+0

は同じ問題を抱えていましたが、私はproject - > cleanが働いていました。 – KillBill

関連する問題