找不到捆绑的 Java 版本。 MacBook Air M1

Posted

技术标签:

【中文标题】找不到捆绑的 Java 版本。 MacBook Air M1【英文标题】:Unable to find bundled Java version. MacBook Air M1 【发布时间】:2021-10-10 21:57:32 【问题描述】:

我在带有英特尔的 MacBook Pro 上使用颤振。它工作正常。现在我改用 M1 芯片的 MacBook Air。我收到错误无法找到捆绑的 Java 版本。请问我该如何解决? 颤振医生 -v [✓] Flutter (Channel stable, 2.2.3, on macOS 11.2 20D64 darwin-arm, locale 千瓦) • Flutter 2.2.3 版,位于 /Users/mac/FlutterDev/flutter • 框架修订 f4abaa0735(5 周前),2021-07-01 12:46:11 -0700 • 引擎版本 241c87ad80 • Dart 版本 2.13.4

[✓] android 工具链 - 为 Android 设备开发(Android SDK 版本 31.0.0) • Android SDK 位于 /Users/mac/Library/Android/sdk • 平台 android-31,构建工具 31.0.0 • Java 二进制文件位于:/Library/Internet 插件/JavaAppletPlugin.plugin/Contents/Home/bin/java • Java 版本 Java(TM) SE 运行时环境(内部版本 1.8.0_301-b09) • 接受所有 Android 许可证。

[✓] Xcode - 为 ios 和 macOS 开发 • Xcode 位于 /Applications/Xcode.app/Contents/Developer • Xcode 12.5.1,内部版本 12E507 • CocoaPods 版本 1.10.2

[✓] Chrome - 为网络开发 • Chrome 位于 /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio(版本 2020.3) • Android Studio 位于 /Applications/Android Studio.app/Contents • Flutter 插件可以从以下位置安装: ??? https://plugins.jetbrains.com/plugin/9212-flutter • Dart 插件可以从以下位置安装: ??? https://plugins.jetbrains.com/plugin/6351-dart ✗ 找不到捆绑的 Java 版本。 • 尝试更新或重新安装 Android Studio。

[✓] 已连接设备(2 个可用) • macOS(桌面) • macos • darwin-arm64 • macOS 11.2 20D64 darwin-arm • Chrome(网络) • chrome • web-javascript • Google Chrome 92.0.4515.131

!医生发现了 1 个类别的问题。

【问题讨论】:

【参考方案1】:

我通过更改 Contents 文件夹位置来修复它。 来自

/Applications/Android Studio Preview.app/Contents/jre/Contents

/Applications/Android Studio Preview.app/Contents/jre/jdk/Contents

关闭 android studio 预览后,我遇到了重新启动它的问题。 但总的来说,颤振医生的工作没有任何问题。

【讨论】:

谢谢我有这个问题太好描述【参考方案2】:

我遇到了同样的问题,就这样解决了

cd /Applications/Android\ Studio.app/Contents/jre
ln -s /Library/Java/JavaVirtualMachines/jdk-16.0.1.jdk jdk
flutter doctor -v

enter image description here

【讨论】:

【参考方案3】:

几天前我在为 ARM64 安装 Android Studio 时遇到了同样的问题,我注意到来自 Oracle 的 JDK 现在在 x64 中运行。在网上看了一下,发现可以为 M1 安装原生 JDK。

所以基本上我发现解决您问题的最佳方法是从Azul安装JDK 15 arm64

它大大缩短了 Android 应用程序的编译时间。

【讨论】:

【参考方案4】:

关于 ✗ 找不到捆绑的 Java 版本。 • 尝试更新或重新安装 Android Studio。

我有另一个环境。不过你可以用我的回答来思考。

在我看来,你需要安装 JDK(Java 开发工具包)。 如果你可以使用 Visual Studio 扩展或 android Studio 插件(我不知道 mac 环境),找到 Java 扩展包安装 JDK(这是在 Visual Studio 上)并安装。您必须正确选择 JAVA 路径。如果您在安装过程中选择它,则无需单独选择路径过程。您可以在系统变量 Path 上看到此路径自动命名为 JAVA_HOME。不是用户路径。

我希望你的颤振很好

【讨论】:

【参考方案5】:

首先,检查你的 JAVA_HOME 发生了什么:

echo $JAVA_HOME

我假设在你的情况下你已经正确设置了它,所以它应该出现在这样的路径中(jdk 版本可能会有所不同):

/Library/Java/JavaVirtualMachines/jdk-16.0.2.jdk/Contents/Home

如果路径看起来相同(或不同的 java 版本相同),并且您还检查了“where java”、“java -version”等,以确保终端能够很好地识别您的 java 并且没有其他明显的 java 问题,这意味着您唯一需要做的就是运行这些命令:

cd /Applications/Android\ Studio.app/Contents/jre

ln -s ../jre jdk

ln -s "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin" jdk

现在,如果你运行 flutter doctor -v,你应该看不到 java 错误,而不是之前的错误:

• Java binary at: /Applications/AndroidStudio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7281165)

没有更多错误:)

希望这会有所帮助!在切换到 M1 MacBook Air 并将 AndroidStudio 升级到 ArcticFox 2020.3.1 Patch 1) 后,它绝对解决了我的问题。

【讨论】:

以上是关于找不到捆绑的 Java 版本。 MacBook Air M1的主要内容,如果未能解决你的问题,请参考以下文章

MissingResourceException:找不到捆绑包基本名称

您的捆绑包被锁定为 mimemagic (0.3.5),但在您的 Gemfile 中列出的任何源中都找不到该版本 [重复]

Jenkins iOS fastlane 构建:找不到“捆绑程序”

MacBook Pro换装win10系统后找不到WiFi

在 macbook pro 蓝牙中找不到 sphero sprk+

sh Elementary os安装在Macbook上找不到无线网路的解法