为什么 Eclipse 抱怨接口方法@Override?

我有一个现有的项目,它使用重写接口方法的方法,而不是超类方法。我无法在代码中更改它,但我希望Eclpse停止抱怨注释,因为我仍然可以使用Maven进行构建。@Override

我该如何禁用此错误?

注意:由于项目要求,我需要针对Java 1.5进行编译。


答案 1

在实现接口声明的方法上使用注释仅在 Java 6 以后有效。这是 Java 5 中的一个错误。@Override

确保将 IDE 项目设置为使用 Java 6 JRE,并且“源代码兼容性”设置为 1.6 或更高版本:

  1. 打开“窗口>首选项”对话框
  2. 浏览到 Java > 编译器。
  3. 在那里,将“编译器合规性级别”设置为 1.6。

请记住,Eclipse 可以覆盖特定项目的这些全局设置,因此也请检查这些设置。


更新:

Java 5下的错误不仅适用于Eclipse;直接从命令行使用将得到相同的错误。它不是有效的 Java 5 源代码。javac

但是,您可以将选项指定给 JDK 6 的 ,这将从 Java 6 源代码生成 Java 5 版本类文件。-target 1.5javac


答案 2

请按以下步骤操作:

项目 -> 属性 -> java 编译器 ->

  • 启用项目特定设置 - “是”
  • 编译器合规性 - 1.6
  • 生成的类文件和源代码兼容性 - 1.5