2

プロジェクトをゼロから作成し、Maven の依存関係の制御を試し、すべての古いファイルを新しいプロジェクトにコピーした後、Eclipse が @Override アノテーションを使用していることに気付きました。この注釈が存在する場合、「メソッドはスーパークラス メソッドをオーバーライドする必要があります」と表示され、存在しない場合はクールなままです。また、クイック入力を使用する場合、この注釈は自動挿入されません。

なぜこれができるのですか?

4

2 に答える 2

3

maven pomを変更して、Java 6または7を適用します。pomを使用してプロジェクトをインポートすると、デフォルトでJava 1.5 JDKになる前に、この問題が発生しました。

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.0.2</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>           
    </plugins>
</build>
于 2012-07-05T22:57:06.507 に答える
1

ほとんどの場合(したい)@Override、インターフェースから継承されたメソッドを使用します。これは、Java 1.6以降でのみ有効です。Eclipseプロジェクトはソースレベル1.5に設定されている可能性があります(または、非常に古い1.5 JDKを実行していますが、それはありそうにありません)。

于 2012-07-05T22:57:09.347 に答える