簡體   English   中英

在帶有JDK Compliance 9和10的Eclipse中“看不見Long類型”

[英]“The type Long is not visible” in Eclipse with JDK Compliance 9 and 10

使用下面提供的代碼,在o.get()上鍵入“ Long類型不可見”(沒有更多信息)時, o.get() Eclipse錯誤。

我安裝了最新的JDK(Java“ 11.0.1” 2018-10-16,並在Eclipse 2018-09(4.9.0)中使用),並且僅當我將項目JDK遵從性設置為9或10時,才會發生錯誤當JDK兼容性設置為1.8或更低時,不會發生這種情況。

import java.util.Optional;

public class TestLongNotVisible {

    Optional<Long> o;

    void a() {
        long x = o.get();
    }

}

我正在尋找解決此問題的方法。 如果任何人有此問題的經驗或知道最可能的原因,請提前感謝您!

默認情況下,我的項目被設置為具有多個依賴項的Maven項目。 Lombok依賴關系導致此問題的發生,因為它在編譯之前會注入代碼。 沒有Lombok依賴性,一切都會按預期進行。 對於任何以Lombok作為依賴項的項目,即使沒有使用Lombok功能,也會出現問題。

Lombok還不支持JDK 10或更高版本。

如果您有此問題,或者類似的問題,並且不可能發生的錯誤(例如Long類型不可見),請檢查您的設置是否有可能的代碼注入器,例如Lombok與編譯器不兼容。

暫無
暫無

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

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