使用.NET 6或更高版本时需要Java SDK 11.0或更高版本

问题描述 投票:0回答:5

我已经安装了 .NET 6(版本 6.0.100-rc.1.21458.32)和 Visual Studio 2020 预览版(尽管它可能不是先决条件)。

我正在尝试调试 hello-world 应用程序,但收到有关 Java 的 构建错误

C:\Program Files\dotnet\packs\Microsoft.Android.Sdk.Windows\31.0.100-rc.1.12\targets\Microsoft.Android.Sdk.Tooling.targets(20,5): error XA0031: 
Java SDK 11.0 or above is required when using .NET 6 or higher. 

我已经安装了 Java 17 设置

Path
并指向 Visual Studio 设置中的 Java 开发工具包位置(工具 -> 选项 -> Xamarin -> Android 设置)。因为这不起作用,我已将 JDK 位置设置为 Microsoft 的 openjdk,但它仍然不起作用。

这里出了什么问题?

java .net installation java-11 maui
5个回答
19
投票

安装 Microsoft 的 OpenJDK 11 为我完成了这项工作。

您可能会注意到 Visual Studio 安装了 Microsoft 的一个版本 OpenJDK,但是,您需要安装 Microsoft OpenJDK 11


15
投票

对于那些在 Jetbrains Rider 中遇到同样问题的人:

  1. 安装 OpenJDK 11Microsoft 的 OpenJDK 11 似乎更好),正如 @themelis 提到的
  2. Ctrl + Shift + A 并搜索 MSBuild 全局属性 或转到 文件 > 设置 > 构建、执行、部署 > 工具集和构建
  3. 编辑MSBuild 全局属性添加以下属性:

Name: JavaSdkDirectory
Value: {OpenJDK installation directory} (mine is C:\Program Files\Microsoft\jdk-11.0.16.101-hotspot)

  1. 保存享受

9
投票

当我安装VS2022 Preview 4时,我的配置变成了

C:\Program Files\Microsoft\jdk-11.0.10.9-hotspot

如果您运行

maui-check
命令(如果您在 Visual Studio 安装过程中安装了该组件),则可以修复此问题。

如果您没有

maui-check
工具,您可以通过运行
dotnet tool install -g Redth.Net.Maui.Check
命令来获取

也许您在安装过程中跳过了某个步骤,这就是您收到错误的原因。


6
投票

Mac 版 Visual Studio

以下是我如何使用 Visual Studio for Mac 在 macOS 上运行它。

安装 Microsoft Open JDK

在 macOS 上,使用 HomeBrew 安装 Microsoft Open JDK

brew install --cask microsoft-openjdk

配置 Visual Studio for Mac

  1. 在 Visual Studio for Mac 中,选择 Visual Studio -> 首选项

  2. 首选项窗口中,导航至SDK位置 -> Android -> 位置

  3. Java SDK (JDK) Location: 文本框中,输入以下内容:

/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
  1. 点击确定


-1
投票

下载 Microsoft OpenJDK v11 对我来说也很有效。谢谢肯·佩斯皮萨。

© www.soinside.com 2019 - 2024. All rights reserved.