在我从头开始创建我的项目,使用maven依赖控制并将所有旧文件复制到一个新项目后,我发现Eclipse现在在@Override注释上发誓。当这个注释出现时,它说“方法必须覆盖超类方法”,否则保持冷静。使用快速输入时,它也不会自动插入此注释。
为什么会这样?
答案 0 :(得分: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>
答案 1 :(得分:1)
您很可能(希望)将@Override
放在从接口继承的方法上。这仅在Java 1.6之后才有效,您的Eclipse项目很可能设置为源级别1.5(或者您运行的是非常过时的1.5 JDK,但这不太可能)