2012-01-06 5 views
2

これは以前の質問のように聞こえています(*)。しかし、それは少し異なります。私は、JDK(7u2)とEclipse(およびAndroidSDK)の最新バージョンでクリーンなシステムをインストールしました。古いプロジェクトをインポートすると、「クラスのメソッドmethodName(Parameter)がスーパークラスメソッドをオーバーライドする必要があります」というエラーが表示されます。JDK 7u2のインタフェースメソッドをオーバーライドするときの@overrideとのコンパイラエラー

@ override-tagは、スーパークラスのINTERFACEのメソッドをオーバーライドするため、(正しく)存在していました。何らかの形でコンパイラはこのタグがスーパークラスのためだけであると考えています。私の知る限り、@overrideはJava 7では変更されておらず、私のプロジェクトは6で正常に動作していました。バグかコンパイビリティの問題か、それとも何か不足していますか? @OverrideがまだのJava 5で実装されたというだけの理由

(*)JDK5にコンパイルするとき、発生する使用と同様の問題、解決策は、当然のことながら6にコンパイラー準拠レベルを変えた。しかし、それは、JDK 7で何です今?

+0

Eclipseでコンパイラのコンプライアンス設定を確認しましたか? – axtavt

+0

はい。とにかくそれ以外のJDKはインストールされていません。 – eks

+0

準拠レベルは、JDK6でもJDK7でも1.6でなければならない – Luciano

答えて

1

開発にはJDK 7を使用しないでください。 requirementがJDK 5または6を使用する必要があります。

+0

実際に私の本当の問題は何か他のものでした:Eclipseプラグインの「プロジェクトプロパティを修正する」オプションはプロジェクトにコンプライアンスレベル5を強制していました。それを見てください。 – eks

関連する問題