【问题标题】:Java on VSCode Extension Pack for Java can't detect jdkVSCode Extension Pack for Java 上的 Java 无法检测 jdk
【发布时间】:2022-02-09 09:52:16
【问题描述】:

我正在尝试在 vscode 上运行 java,但是“Java 扩展包”一直要求我重新下载 jdk。我能够在 intellij 上运行 java 并且一直在使用它,但是由于我将 vscode 用于其他所有内容,因此我想让它在我的主编辑器上运行。

这里是java相关的设置

"java.help.firstView": "gettingStarted",
    "java.home":"/Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home/bin/java",
    "java.jdt.ls.java.home": "/Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home/bin/java",
    "java.configuration.runtimes": [
  {
    "name": "JavaSE-17",
    "path": "/Library/Java/JavaVirtualMachines/microsoft-17.jdk/Contents/Home/bin/java",
  },
  {
    "name": "JavaSE-17",
    "path": "/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home/bin/java",
  },
  {
    "name": "JavaSE-17",
    "path": "/Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home/bin/java",
    "default": true
  },
],

enter image description here

错误 Visual Studio Code 设置中定义的 java.home 变量指向丢失或无法访问的文件夹 (/Library/Java/JavaVirtualMachines/adoptopenjdk-17.jdk/Contents/Home)

有什么想法吗?

我使用的所有其他语言都可以正常工作,只是似乎是 java。

【问题讨论】:

    标签: java visual-studio-code settings vscode-extensions corretto


    【解决方案1】:

    假设您使用的是最新的 Java 扩展,以下是一些建议:

    1. java.home 已弃用,请不要使用,请改用java.jdt.ls.java.home
    2. 最新的Java扩展已经嵌入了一个jre 17,你可以在$home/.vscode/extensions/redhat.java-1.x.0/jre找到它。理想情况下,无需指定 java.jdt.ls.java.home,除非您的平台未涵盖。
    3. 如果你的平台没有被覆盖,那么你需要手动设置java.jdt.ls.java.home,它应该指向你JDK安装的主路径。所以请将其更新为/Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home
    4. java.configuration.runtimes 用于将不同的 JDK 版本映射到它们的安装路径。请确保每个版本在此设置中只出现一次。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-07-08
      • 2016-10-30
      • 2014-04-27
      • 2021-06-15
      • 1970-01-01
      • 2020-06-25
      • 1970-01-01
      相关资源
      最近更新 更多