Eclipse - 设置为编译器1.6以避免@Override错误无法正常工作?

时间:2012-01-31 15:05:47

标签: java android eclipse

我目前正在使用Android开发一个小型测试项目,我得到了臭名昭着的@Override错误:

  

KvizActivity类型的onBackPress()方法必须覆盖或实现   超类型方法。

以下是导致它的代码:

public class KvizActivity extends Activity {
    /** onCreate(), onDestroy(), etc... */

    @Override
    public void onBackPress() {

    }
}

现在我知道你在想什么:已经有很多这样的问题和答案。我知道,我读了所有这些,但是,我无法摆脱它。我知道它的核心原因是Eclipse使用的是JDK 1.5而不是1.6或更高版本。

但我已经完成了所有这些:去项目 - > 属性 - > Java编译器,我将其设置为 1.6 。错误仍然存​​在。

然后我去了 Window - > 偏好设置 - > Java编译器并将其设置为 1.6 ,因此它将是全局的,但仍然存在。然后我设置了项目特定设置,即使我已经这样做了,我重试了它。没有。我清理了项目并使用了重建但仍然存在。

我无法想到要做的其他事情。

这是我的Java版本:

Java version "1.7.0_01"
Java(TM) SE Runtime Environment (build 1.7.0_01-b08)
Java HotSpot(TM) Client VM (build 21.1-b02, mixed mode, sharing)

我有Eclipse 3.7.1 ,我相信这是最新的。

我希望任何人都能对此有所了解。

1 个答案:

答案 0 :(得分:3)

您要覆盖的方法是onBackPressed()。要使@Override起作用,方法签名必须与父类中声明的方法匹配。在这种情况下,您拼错了方法名称。