在 vscode 中获取 javaSE-16 错误的无效运行时 - 运行时与 javaSE-16 环境不兼容

问题描述

我最近将我的发行版从 arch 更改为 manjaro,它随 openjdk 一起安装,问题是我无法读取 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.

我尝试了 runtime pathjava:configure java runtime 的所有其他值,但最终还是遇到了同样的问题,但使用了不同的 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 有点陌生,所以感谢您的帮助。谢谢

解决方法

报告 java extension doesn't support java16, 存在 github 问题,因此工程师是 adding support for java16。可能会在下次更新中实现。