首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Visual代码显示“运行需要Java 11或更多版本。请下载并安装最近的JDK”

Visual代码显示“运行需要Java 11或更多版本。请下载并安装最近的JDK”
EN

Stack Overflow用户
提问于 2020-07-22 21:38:12
回答 12查看 101.7K关注 0票数 71

今天,Visual代码开始向我展示一个弹出的语句:

运行Java 11或更高版本是必需的。请下载并安装最近的JDK。

我需要使用JDK 8 (工作在Apache上,这是最后支持的版本)。我一直在做这件事,在这件事发生之前我没有遇到任何问题。

我已经阅读了这篇文章并实现了上面提到的要点。

下面是我在Visual代码上的工作区设置(我已经反复检查了路径)

代码语言:javascript
复制
{
    "java.configuration.updateBuildConfiguration": "disabled",
    "java.home": "/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home",
    "java.configuration.runtimes": [
        {
          "name": "JavaSE-1.8",
          "path": "/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home",
          "default": true
        },
        {
          "name": "JavaSE-11",
          "path": "/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home",
        }
      ]
}

其他有用的资料:

代码语言:javascript
复制
➜ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home

代码语言:javascript
复制
➜ which java
/usr/bin/java

尽管我已经成功地在Visual代码上运行了JDK 8一段时间,但这种情况今天就开始发生了。我不记得更新Visual代码,所以我不知道为什么现在要显示它,因为从4月中旬开始弹出就已经显示了(在vscode-java Gitter频道上被问到)。

EN

回答 12

Stack Overflow用户

回答已采纳

发布于 2020-07-22 22:13:23

变出

"java.home": "/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home"

"java.home": "/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home"

其余的设置保持原样。

票数 57
EN

Stack Overflow用户

发布于 2021-04-13 17:40:37

给未来的读者。如果使用扩展“”,可能会出现类似的错误。我的JAVA_HOME设置为java 8,但需要java 11来使用。Spring似乎使用了JAVA_HOME环境变量或PATH环境变量春季工程发行中的任何变量。要重写JAVA_HOME变量,需要修改spring-boot.ls.java.home设置。

  1. 打开代码
  2. CRTL + ,打开设置
  3. 搜索spring-boot.ls.java.home
  4. 选择“settings.json中的编辑”
  5. 您的Java 11安装"spring-boot.ls.java.home": "C:\\Program Files\\Java\\jdk-11.0.10"
  6. 保存并重新启动VS代码

Prereq:安装Java 11

票数 19
EN

Stack Overflow用户

发布于 2020-08-06 16:13:13

不推荐解决办法(不适用于未来):

解决办法之一是将最新版本0.65.0的扩展“Red对Java(TM)的语言支持”降级。返回到

vscode-java版本0.64.1

(这是不建议的,除非您对JDK版本有限制,这是可能的,请参阅下面的备注。如果可以,请使用此线程的可接受答案。)。)。

取自https://github.com/redhat-developer/vscode-java/issues/1543#issuecomment-669895753,下面是如何安装早期的扩展版本(感谢发布此消息的GitHub用户):

请注意:

这应该只适用于那些不能安装JDK 11或更高版本的人:

  • 由于使用了32位系统(同时又被迫使用Oracle 8作为32位的最后一个甲骨文版本,因此不允许他们使用推荐的OpenJDK 14 -参见https://github.com/redhat-developer/vscode-java/wiki/JDK-Requirements#jdk11.requirement→在Java Development Kit链接→跳转到https://adoptopenjdk.net/的顶部单击)
  • 由于对64位系统的限制:
    • 一个看似合理的原因是,您不允许更新Gradle,而且您的Gradle版本低于4.7,请再次参阅github讨论
    • 一个“不太可信”的限制可能是一些有效的懒惰。您可能根本不想安装一个新的JDK并将Visual代码设置更改回原来的JDK,这仅仅是因为Java扩展的版本更改了:)。

如果没有重要的限制,就不应该这样做。最合理的限制是使用Windows 32位,这应该只适用于那些有旧上网本的人。

在通常情况下:升级,然后通过根据https://github.com/redhat-developer/vscode-java/wiki/JDK-Requirements#jdk11.requirement更改设置,您仍然可以返回到使用旧的Java版本。

我是否需要将我的项目迁移到Java 11? “不,你没有!好吧,我们不是来判断的。只要在用户的java.configuration.runtimes中配置适当的settings.json,编译/运行Java1.5到14的应用程序仍然是可能的。”

->这意味着您可以升级扩展,至少安装Java 11 (JDK 11),并使用您选择的<=运行时-您已安装的Java。

请参阅https://github.com/redhat-developer/vscode-java/issues/1543#issuecomment-671106893上有关Windows 64位的详细说明。

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63043585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档