Eclipseのインターフェイス実装に@Overrideアノテーションが欠落している場合の警告を追加
-
03-07-2019 - |
質問
JDK1.6.0_10を使用するEclipse 3.4.1では、インターフェイスメソッドを実装するメソッドの @Override
アノテーションが欠落している場合に警告をアクティブにするにはどうすればよいですか?
[設定]ウィンドウでこのオプション:
Java>コンパイラ>エラー/警告> 注釈> 「@Override」がありません 注釈
スーパークラスメソッドをオーバーライドするメソッドで注釈が欠落している場合は正常に機能しますが、インターフェイスメソッドでは何もしません。
解決
Eclipse 3.4.1では不可能です。 既知の問題です。詳細については、このバグレポートページを参照してください。
他のヒント
他のスレッドで私が言ったことを忘れてください。どうやらそれはコンパイラーのオプションではなく、Java互換性バージョンの問題です。互換性バージョンが5の場合、インターフェース実装メソッドに注釈を付けることはできません。互換性バージョンが6であれば、次のことが可能になります。
ただし、実装された各メソッドに注釈を付けない場合、実際にEclipseに強制的にエラーを生成させる方法はないと思います。 このページ:
'@ Override'アノテーションの欠落:有効にすると、コンパイラーは、別の実装メソッドをオーバーライドするメソッドに遭遇するたびにエラーまたは警告を発行し、 '@ Override'アノテーションが欠落します。
1.5ではなく1.6に設定した互換性は、私にとってはうまくいきました: Web開発者向けのEclipse Java EE IDE。
ビルドID:20100218-1602
たぶん何かが足りないかもしれませんが、インターフェースメソッドはすでに実装クラスによって実装される必要があります。
インターフェイスが完全に実装されていない場合、コンパイラはエラーを生成します。