Visual Studio - 找不到 JDK

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

我目前在使用 Visual Studio 2022 时遇到问题(2019 年也出现此问题), 每当我创建新的 Xamarin 项目时,我都会收到这些错误。

enter image description here

当我尝试将现有 JDK 安装配置为指向另一个 JDK 时,它不起作用。使用默认安装的OpenJdk也不起作用

enter image description here

这里我试图将其指向随 Visual Studio 安装的现有 JDK。 我还尝试了 jdk 8openjdk 11 13.8.1。 我尝试更改 JAVA_HOME 以指向适当的 JDK,但无济于事。

在“工具”->“选项”->“Xamarin”下,我有这个 enter image description here

我无法对“Java Development Kit Location”执行任何操作,如果我尝试将其指向任何 JDK 位置,它会告诉我“无法在指定路径中找到 Java Development Kit 文件”

android SDK 位置指向 VS 在安装过程中安装的 SDK。

我曾多次尝试卸载计算机上与 VS 相关的所有内容,但仍然不起作用

我已经尝试过(排名不分先后):

  • 按照 IDE 的建议修复了 Visual Studio(以便使用默认的 OpenJdk)
  • 在安装 Visual Studio 之前安装 OpenJDK 并设置正确的 PATH 和 JAVA_HOME
  • 安装Visual Studio后安装合适的JDK
  • 在我的计算机上安装没有 JDK 的 Visual Studio 并让 Visual Studio 将 PATH 设置为默认安装的 OpenJdk
  • 安装 OpenJDK 并让 JDK 自行设置 PATH
  • 安装 Visual Studio 之前关闭所有恶意软件防护和 Windows 防火墙
  • 我总是在 CMD 中检查“javac”和“echo &JAVA_HOME%,以查看一切是否正常工作
  • 更改 PATH 以指向 JDK 文件夹中

关于如何解决这个问题有什么建议吗?

java visual-studio xamarin visual-studio-2019 visual-studio-2022
2个回答
1
投票

查看有关在 vs 上设置 android sdk 的指南 https://learn.microsoft.com/en-us/xamarin/android/get-started/installation/android-sdk?tabs=windows

这里是关于在 vs 中更新 jdk 的指南https://learn.microsoft.com/en-us/xamarin/android/troubleshooting/questions/update-jdk?tabs=windows

如果您完成了这两项操作但没有任何更改,您可以报告问题,如下所示:enter image description here


0
投票

我遇到了同样的问题,发现 Visual Studio 安装程序的日志文件包含:

[0cd4:0007][2024-07-18T15:06:53] c:\windows\syswow64\\windowspowershell\v1.0\powershell.exe -NoLogo -NoProfile -Noninteractive -ExecutionPolicy Unrestricted -InputFormat None -Command "& """C:\ProgramData\Microsoft\VisualStudio\Packages\OpenJDKv17,version=17.0.8.0,machinearch=x64\AndroidSDKPrivateInstall.ps1""" -Package jdk-17.0.8.101-hotspot -FileName microsoft-jdk-17.0.8.1-windows-x64.zip -Version 17.0.8 -AndroidHome """C:\Program Files (x86)\Android""" -Operation Install; exit $LastExitCode"
[0cd4:0007][2024-07-18T15:06:53] Error: & : AuthorizationManager check failed.
At line:1 char:3
+ & "C:\ProgramData\Microsoft\VisualStudio\Packages\OpenJDKv17,version= ...
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

原来 Windows 阻止了该文件的执行:

C:\ProgramData\Microsoft\VisualStudio\Packages\OpenJDKv17,版本=17.0.8.0,machinearch=x64\AndroidSDKPrivateInstall.ps1

可能是因为我将 Visual Studio 的安装程序文件从网络驱动器复制到我的计算机。安装程序在运行时只是默默地失败了。诀窍是转到 AndroidSDKPrivateInstall.ps1 的文件属性,取消选择只读,然后单击取消阻止。

然后您应该能够再次运行 Visual Studio 安装程序并安装 OpenJDK。

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