1. ホーム
  2. java

[解決済み] なぜEclipseはインターフェイスメソッドの@Overrideについて文句を言うのですか?

2022-06-06 08:25:30

質問

私は、既存のプロジェクトで @Override をオーバーライドするメソッドで インターフェース メソッドをオーバーライドするメソッドに適用されます。私はコードでこれを変更することはできませんが、私はまだMavenでビルドすることができるので、Eclpseがアノテーションについて文句を言わないようにしてほしいです。

このエラーを無効にするにはどうしたらよいでしょうか。

注:プロジェクトの要件により、私はJava 1.5用にコンパイルする必要があります。

どのように解決するのですか?

を使用して @Override アノテーションを使用することは、Java 6 以降でのみ有効です。Java5ではエラーになります。

IDE プロジェクトが Java 6 JRE を使用するように設定されており、"source compatibility" が 1.6 以上に設定されていることを確認します。

  1. ウィンドウと環境設定] ダイアログを開きます。
  2. Java >Compilerをブラウズします。
  3. そこで、"Compiler compliance level" を 1.6 に設定します。

Eclipse は特定のプロジェクトに対してこれらのグローバルな設定を上書きすることができるので、それらもチェックしてください。


更新しました。

Java 5 でのエラーは、Eclipse でのエラーだけではありません。 javac をコマンドラインから直接使用すると、同じエラーが発生します。 有効な Java 5 ソース コードではありません。

但し、指定できるのは -target 1.5 オプションを JDK 6 の javac というオプションを使用すると、Java 6 のソースコードから Java 5 バージョンのクラスファイルが生成されます。