我最近在我的计算机上安装了 Java 23 JDK,我进入 VSCode 来更新它使用的 Java 版本。然而我发现它已经坏了。
打开我的 Java 项目时,我看到一个错误弹出窗口,显示
Error initializing Oracle Java SE Language Server not enabled
。
在关联的终端窗口中,我发现了以下日志:
Initiating server activation
Request to kill LSP server.
Cannot kill: current process is None
Launching Oracle Java SE Language Server with /Library/Java/JavaVirtualMachines/zulu-23.jdk/Contents/Home and userdir /Users/rahulchoubey/Library/Application Support/Code/User/workspaceStorage/bc14dfd84ed7c4f7a6d495fae3d0d875/Oracle.oracle-java
LSP server launching: 3851
LSP server user directory: /Users/[username]/Library/Application Support/Code/User/workspaceStorage/bc14dfd84ed7c4f7a6d495fae3d0d875/Oracle.oracle-java
There are parameters but nobody wants to proces them: [Course, Files]
Cannot find org.netbeans.modules.java.lsp.server in the log!
Please refer to troubleshooting section for more info: https://github.com/oracle/javavscode/blob/main/README.md#troubleshooting
Request to kill LSP server.
Cannot kill: Requested kill on 3851, current process is None
Oracle Java SE Language Server not enabled
([用户名]只是我的用户名的替身。)
根据“参数”消息,错误可能是我的文件夹名称中有空格,但之前并没有引起任何问题 - 错误只是昨天开始的。
settings.json
文件中相关值如下:
{
…,
"java.configuration.runtimes": [
{
"name": "JavaSE-23",
"path": "/Library/Java/JavaVirtualMachines/zulu-23.jdk/Contents/Home",
"sources": "/Library/Java/JavaVirtualMachines/zulu-23.jdk/Contents/Home/lib/src.zip",
"default": true
},
],
"java.jdt.ls.java.home": "/Library/Java/JavaVirtualMachines/zulu-23.jdk/Contents/Home",
}
我不认为该错误与 Netbeans 相关,因为我没有安装 Netbeans,并且该扩展到目前为止工作得很好。 “故障排除”部分仅建议清除缓存,没有任何作用。
我考虑过的一个解决方案是将我的项目目录重命名为包含下划线;但是,它的大多数子目录的名称中也有空格,所以我不确定该解决方案是否可取。
(我在这里搜索,但只找到了这个问题。唯一的答案是安装 JDK,并且我没有收到“未找到 JDK!”的弹出窗口以及错误消息。)
我遇到了同样的问题,并通过将 Java 扩展从 v23.0.0 降级到 v22.1.2 来修复它(尽管我有 java 22,而不是 23)