スーパークラスメソッドではなく、インターフェイスメソッド@Overrideをオーバーライドするメソッドを使用する既存のプロジェクトがあります。これをコードで変更することはできませんが、Mavenで引き続きビルドできるため、Eclpseがアノテーションについて不平を言わないようにしてください。
このエラーを無効にするにはどうすればよいですか?
注:プロジェクトの要件により、Java 1.5用にコンパイルする必要があります。
スーパークラスメソッドではなく、インターフェイスメソッド@Overrideをオーバーライドするメソッドを使用する既存のプロジェクトがあります。これをコードで変更することはできませんが、Mavenで引き続きビルドできるため、Eclpseがアノテーションについて不平を言わないようにしてください。
このエラーを無効にするにはどうすればよいですか?
注:プロジェクトの要件により、Java 1.5用にコンパイルする必要があります。
回答:
@Overrideインターフェースで宣言されたメソッドを実装するメソッドでのアノテーションの使用は、Java 6以降でのみ有効です。これはJava 5のエラーです。
IDEプロジェクトがJava 6 JREを使用するように設定されていること、および「ソース互換性」が1.6以上に設定されていることを確認します。
Eclipseは特定のプロジェクトのこれらのグローバル設定をオーバーライドできるので、それらも確認してください。
更新:
Java 5でのエラーはEclipseだけのものではありません。javacコマンドラインから直接使用すると、同じエラーが発生します。有効なJava 5ソースコードではありません。
ただし、-target 1.5JDK 6のオプションを指定できますjavac。これにより、Java 6ソースコードからJava 5バージョンのクラスファイルが生成されます。
次のようにします。
プロジェクト->プロパティ-> Javaコンパイラ->
プロジェクトにファセットがあるかどうかも確認してください。そこでJavaバージョンがオーバーライドされる可能性があります。
プロジェクト固有の設定が有効になっている可能性があります。プロジェクトを選択しProject > Properties > Java Compiler、または変更して上記の対応を忘れてはならないし。
それが機能しない場合は、Eclipseからプロジェクトを削除し、ファイルを削除します。そして日食。それは私のために働いたuncheckEnable project specific settingsJdk 1.6JRE.settings folders.project.classpathclean and build the project, import it back into eclipse and then reset your Java compiler. Clean and build your project
Java 6構文を受け入れるようにコンパイラー設定を変更し、Java 5出力を生成することができます(覚えています)。ランタイムで必要な場合は、「生成されたクラスファイルの互換性」を少し低く設定します。 更新:私はEclipseをチェックしましたが、ソースの互換性を1.6に、クラスの互換性を1.5に設定すると不平を言います。1.6が許可されていない場合は、通常、ソース内の問題のある@Overrideアノテーションを手動でコメント化します(これはあなたのケースには役立ちません)。
Update2: 手動ビルドのみを行う場合は、元のプロジェクトを新しいプロジェクトにコピーし、Javaソースから@Overrideアノテーションを削除して、EclipseでClean Projectをクリックするだけの小さなプログラムを作成できます。
Retroweaverを試し、Java6クラスからJava5バージョンを作成することもできます。
Eclipseを使用して、「@ Override」のすべてのインスタンスを検索および置換(削除)します。次に、「クリーンアップ」を使用して、インターフェース以外のオーバーライドを追加します。
手順: