商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > VS Code插件Language Support for Java(TM) by Red Hat报错两种解决办法

VS Code插件Language Support for Java(TM) by Red Hat报错两种解决办法

  发布于2026-07-09 阅读(0)

扫一扫,手机访问

Ja va 21 or more recent is required to run the Ja va extension. Please download and install a recent JDK. You can still compile your projects with older JDKs by configuring ['ja va.configuration.runtimes'](https://github.com/redhat-developer/vscode-ja va/wiki/JDK-Requirements#ja va.configuration.runtimes)

VS Code插件Language Support for Ja va(TM) by Red Hat报错两种解决办法

翻译一下这段报错信息:运行 Ja va 扩展需要 Ja va 21 或更高版本。请下载并安装最新的 JDK。您仍然可以通过配置 ['ja va.configuration.runtimes'] 使用较旧的 JDK 编译项目。

问题说白了,就是插件要“吃”JDK 21,但你的项目环境可能还在用老版本。既要让插件正常工作,又不影响现有项目的编译,这事其实有得解,而且不止一条路。

如果你目前的项目依赖旧版 JDK(比如 JDK 17),但又想用最新的 Language Support for Ja va 插件,下面这两种方案可以直接套用。

方法一(推荐使用):

方案很简单:按照提示下载新版 JDK。拿之前的案例来说,项目本身基于 JDK 17,插件报错要求 JDK 21,那就把 JDK 21 下载下来安装好。

VS Code插件Language Support for Ja va(TM) by Red Hat报错两种解决办法

接下来打开 VS Code 的设置,直接搜索 ja va.configuration.runtimes。找到这个配置项之后,点击“在 setting.json 中编辑”,如下图操作。

VS Code插件Language Support for Ja va(TM) by Red Hat报错两种解决办法

跳转到的 JSON 文件中,需要修改 ja va.configuration.runtimes 下的内容。按照下面的示例来填:第一个条目 Ja vaSE-17 是项目运行需要的,填好 name 和 path 之后,记得加上 "default": true 字段,意思是默认用 JDK 17 运行项目。第二个条目 Ja vaSE-21 是专门给插件用的,填好信息即可。保存文件,问题就解决了。

VS Code插件Language Support for Ja va(TM) by Red Hat报错两种解决办法

"ja va.configuration.runtimes": [
    {
      "name": "Ja vaSE-17",
      "path": "/usr/lib/jvm/ja va-17-openjdk-amd64",//项目运行需要
      "default": true
    },
    {
      "name": "Ja vaSE-21",
      "path": "/usr/lib/jvm/ja va-21-openjdk-amd64"//插件运行需要
    }
    ]

方法二(不推荐,除非你极其不愿意下载新版JDK):

另一条路就是回退 Language Support for Ja va(TM) by Red Hat 插件的版本。举个例子,如果当前的 JDK 是 17,插件报错说要 JDK 21,那就找到支持 JDK 17 的旧版插件装上去。

VS Code插件Language Support for Ja va(TM) by Red Hat报错两种解决办法

右键插件,选择“安装特定版本”,就能在历史版本列表里找到对应的版本了。

VS Code插件Language Support for Ja va(TM) by Red Hat报错两种解决办法

回退到兼容旧 JDK 的插件版本后,问题理论上可以解决。不过必须说,这只是个兜底方案,推荐优先用第一种方法——让项目和新版 JDK 共存,才是长期省心的做法。

总结

这两种思路其实代表了两种选择:要么让环境去适配越来越新的工具链,要么让工具链迁就老环境。第一方案更可持续,第二方案适合实在不想多装 JDK 的特定场景。根据你的项目状况和心情来选就好。

本文转载于:https://www.jb51.net/program/363159d6u.htm 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注