Visual Studio Code 无法识别 java 项目

Lea*_*ral 14 java gradle visual-studio-code

VS Code 无法识别我的 java 项目。该项目是此处找到的《我的世界》模组的模板代码。我已经安装了插件

  • “Java 调试器”
  • “Java扩展包”
  • “Redhat 对 Java 的语言支持”
  • “Java 测试运行器”
  • “Java 项目经理”

我还收到与 gradle 相关的错误。

Could not run phased build action using connection to Gradle distribution 'https://services.gradle.org/distributions/gradle-7.0.2-bin.zip'.
java.io.StreamCorruptedException: invalid type code: 00
invalid type code: 00
Run Code Online (Sandbox Code Playgroud)

这是我的 settings.json 文件

Could not run phased build action using connection to Gradle distribution 'https://services.gradle.org/distributions/gradle-7.0.2-bin.zip'.
java.io.StreamCorruptedException: invalid type code: 00
invalid type code: 00
Run Code Online (Sandbox Code Playgroud)

我的 Java 文件没有代码补全。在它工作之前,在 Visual Studio 的右下角它显示了我正在使用的 Java 版本,但现在它只显示 Java。我假设它是因为 gradle 有问题,因此无法确定我的 java 版本。感谢您的时间。

更新: 这似乎有效并给我自动完成功能,但我仍然收到上面提到的与 gradle 相关的错误。

{
    "files.exclude": {
        "**/.classpath": true,
        "**/.project": true,
        "**/.settings": true,
        "**/.factorypath": true
    },
    "editor.suggestSelection": "first",
    "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
    "java.configuration.updateBuildConfiguration": "interactive",
    "java.home": "/usr/lib/jvm/java-16-openjdk-amd64",
    "java.configuration.runtimes": [
        {
          "name": "JavaSE-1.8",
          "path": "/usr/lib/jvm/java-8-openjdk-amd64",
          "default": true
        },
    ]
}
Run Code Online (Sandbox Code Playgroud)

say*_*ngu 12

Java: Clean Java Language Server Workspace在命令面板上运行

  • 就我而言,我没有像这样的设置文件.project./settings/...files


Lea*_*ral 1

对于遇到与我相同问题的任何人,请确保您的 settings.json 文件看起来与我的类似,包括 java 1.8 运行配置和 java 11+ 运行配置,与指定为主路径的配置相同。那应该修复java语言级别。gradle错误你可以忽略,但是你必须使用gradle runClient而不是vscode提供的运行配置。快乐改装 :D

  • Java扩展需要**JDK11或最新版本**来支持,因此如果将jdk1.8设置为“java.home”,则扩展将无法正常工作。 (2认同)