我最近将我的发行版从随openjdk一起安装的manjaro改为arch,问题是我无法阅读java开发人员代码(例如,我想了解Queue是如何实现的--由于某种原因无法使用openjdk实现),所以我安装了oracle jdk-16,它解决了这个问题-我现在可以在一些实体上执行ctrl + leftclick并查看它的实现。但这带来了一个新问题,每当我启动vscode时,它都会显示以下错误
Invalid runtime for JavaSE-16: Runtime at '/usr/lib/jvm/java-16-jdk' is not compatible with
the 'JavaSE-16' environment.我在java:configure java runtime中尝试了runtime path的其他所有值,但最终得到了相同的问题,但使用了不同的runtime path。
我甚至在我的操作系统中使用archlinux-java set java-16-jdk更改了我的默认java,并检查了它是否使用archlinux-java status正确设置,它显示java-16-jdk是默认的jdk。
这是我的settings.json的相关部分-
"java.configuration.runtimes": [
{
"name": "JavaSE-16",
"path": "/usr/lib/jvm/java-16-jdk",
"default": true
}
],
"java.home": "/usr/lib/jvm/java-16-jdk"另外,当我将鼠标悬停在java.configuration.runtime的name属性上时,我得到了以下提示-
Value is not accepted. Valid values: "J2SE-1.5", "JavaSE-1.6", "JavaSE-1.7", "JavaSE-1.8",
"JavaSE-9", "JavaSE-10", "JavaSE-11", "JavaSE-12", "JavaSE-13", "JavaSE-14", "JavaSE-15我对java还是个新手,所以如果有任何帮助,我将不胜感激。谢谢
发布于 2021-04-19 15:38:01
由于github在报告java extension doesn't support java16,时存在问题,因此工程师是adding support for java16。这可能会在下一次更新中实现。
https://stackoverflow.com/questions/67155680
复制相似问题