簡體   English   中英

eclipse中的openjdk 1.7:不允許運算符的源級別低於1.7

[英]openjdk 1.7 in eclipse: operator is not allowed for source level below 1.7

Eclipse給了我一個錯誤:

'<>' operator is not allowed for source level below 1.7 

我想這是因為它沒有使用java 1.7。 除此之外。 至少openjdk 1.7(我的操作系統是OpenSuse 12.3)。

我從kepler切換回juno以減少一些滯后並嘗試找出這個bug,到目前為止無濟於事。

我嘗試過的一些事情: - eclipse的默認運行時是opensdk 1.7(在幫助中說明,安裝細節) - 項目屬性,java build - > library。 我手動添加了opensdk位置。

我會安裝oracle版本,但opensuse存儲庫中只有1.6。 我已經嘗試安裝oracle提供的rpm,它沒有把自己放在我的路徑中,並且把一切搞砸了,所以我再次刪除它。

它應該與openjdk一起工作嗎? 或者你認為它有蟲子?

ps:junit也無法識別,所以我手動鏈接到jar文件。 也許這是相關信息。

在項目的首選項中,必須將編譯器--source選項設置為1.7 ,將--target選項設置為1.7 有專門的選項框。

右鍵單擊該項目。 選擇屬性 選擇左側的Java Compiler 選擇1.7作為編譯器合規性級別 如果下面的2個下拉列表不是1.7 ,請取消選中使用默認合規性設置並將其設置為1.7

右鍵單擊錯誤,選擇快速修復,然后選擇將JRE更改為1.7

如果您想使用以下版本,請使用

Map<String, Integer> map = new HashMap<String, Integer>();

代替

HashMap<String, Integer> map = new HashMap<>();

右鍵單擊Project - properties - Java Complier - Compiler compliance -set level 1.7

如果你想堅持使用java 1.6 ,搜索並用空字符串替換<>。 您將收到編譯器警告,但錯誤應該消失。

我有同樣的問題,但與 - 編譯器合規級別 - 生成.class文件兼容性 - 源兼容性都已設置為1.7。 我在所有3上重新選擇了1.7,然后Eclipse檢測到它,要求重建並成功構建我的項目。

窗口 - >首選項 - > Java的>編譯器

選擇1.7並點擊好。

如果您正在自動構建,則需要完全重新構建。

右鍵單擊該項目。 選擇屬性。 選擇左側的Java Compiler。 選擇1.7作為編譯器合規性級別。 如果下面的2個下拉列表不是1.7,請取消選中使用默認合規性設置並將其設置為1.7。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM