2012-03-27 50 views
3

最近我更新了我的電腦到Ubuntu 11.10 64位。我在導入項目時遇到問題,它給了我一個錯誤該方法必須重寫超類方法

「onView()方法必須覆蓋超類方法」。

我在其他一些帖子中讀到,錯誤應該是使用java 1.5,但是Ubuntu 11.10自帶了open-6-jdk。

解決方案的任何想法?

+0

您是否在理解錯誤消息時遇到問題,或者在正確配置JDK/Eclipse時遇到問題? – aioobe 2012-03-27 14:17:11

+0

對於jdk來說是一個奇怪的問題,只要我在更新計算機之前讓所有東西都能正常工作 – 2012-03-27 14:20:20

+0

在Eclipse中,您仍然可以決定選擇與所安裝的不同的Java運行時環境。在Java 5中,@Override不允許用於實現接口方法的方法,而在Java 6中則強烈鼓勵它。如果您碰巧將您的項目配置到Java 5環境,您可能會遇到這種錯誤 – 2012-03-27 14:21:11

回答

12

聽起來您的項目的JDK合規性級別設置爲1.5。 (安裝在機器上的Java版本只決定了您可以設置合規級別的高度。)您可以通過打開項目屬性(右鍵單擊項目名稱,然後選擇「屬性」)並選擇「Java編譯器「在左邊。

在Java 1.6中,@Override註釋可以(也應該)用於在已實現的接口中定義的方法。 Java 1.5不允許這樣做。

+0

我已經檢查過它是1.6級別 – 2012-03-27 14:19:23

+0

@PedroTeran - 您是否檢查了工作區屬性或項目屬性?他們可以不同。 – 2012-03-27 14:21:57

+0

我之前已經把工作區打了一遍,項目屬性是1.5,我忘了在那裏檢查,並且有問題,謝謝 – 2012-03-27 14:31:27

1

也許你的機器上有多個java虛擬機。請鍵入

$ ls /usr/lib/jvm 

您是否看到多個條目?

如果是,請啓動Eclipse並轉到Help-> About Eclipse Platform-> Configuration Details,然後查找屬性java.version(對於我來說它是1.7.0_03-icedtea)。

如果是錯誤的,你可以去Window-> Preferences-> Java-> Installed JRE,然後把它改成你喜歡的那個。

+0

好的,我已經打開了6-jdk並打開了7-jdk,但在幫助上有一個java.version = 1.6.0_23 – 2012-03-27 14:27:08

相關問題