Vscode中不再支援JDK8的原因分析及解決方案

2022-09-26 11:36:18 字數 641 閱讀 7969

昨天還用得好好的,今天突然給我說僅支援jdk11以上了,www.cppcns.com也不能進行正常的**補全了。

看了一下,是language support for j**a™ by re程式設計客棧d hat這個拓展更新到0.65.0的原因。

因為eclipse平台決定將jdk11作為9月發布的程式設計客棧最低要求,而vscode是依賴eclipsejdt.ls伺服器的,所以需要更新到jdk11。

解決方案1

如果不是必須使用jdk8,可以選擇更換為jdk11或更新

解決方案2

官方說可以在settings.json中配置j**a.configuration.runtimes,這個配置仍然支援j**a1.5到14

不過依舊需要安裝jdk11,用來啟動j**a語言伺服器,具體的編譯版本則可以自行選擇

"jawww.cppcns.comva.home": "/path/to/jdk-11",

"j**a.configuration.runtimes": [

, ,]

解決方案3

照常使用以前版本,直接選中該拓展的設定–>安裝另乙個版本–>選擇安裝的版本:0.64.1

然後關閉拓展更新:

在設定中關閉extensions: auto update

總結

jdk8中forEach使用問題

實話說,jdk8出來好久了,公司一直用的還是jdk7,沒有公升級,最近終於公升級到jdk8了,所以來自己改改 使用jdk8中的新特性,最簡單的foreach先來試試 測試 如下 public static void testjdk8foreach 2 jdk8 foreach aslist.fore...

JDK8中的鎖優化

參考 longadder 類似automiclong,但是提供了 熱點分離 過程如下 如果併發不激烈,則與automiclong 一樣,cas賦值。如果出現併發操作,則使用陣列,陣列的各元素之和為真實value,讓操作分散在陣列各個元素上,把併發操作壓力分散,一遇到併發就擴容陣列,最後達到高效率。一...

JDK8中介面的變化

package cn.king.demo01 介面 inte ce myinter01 介面中的 static方法 只能使用 介面名.靜態方法名 的方式呼叫 static void fun2 實現類 class myinter01impl implements myinter01 測試 public...