Flutter Doctor - 无法确定捆绑的 Java 版本

Posted

技术标签:

【中文标题】Flutter Doctor - 无法确定捆绑的 Java 版本【英文标题】:Flutter Doctor - Unable to determine bundled Java version 【发布时间】:2020-05-19 17:35:43 【问题描述】:

其实我并不想安装 android Studio 来使用 Flutter,所以我只安装了 Android SDK 命令行工具。

问题是,当我运行颤振医生时,我收到以下警告。

当我创建一个新项目时,我得到了这个。

我能够毫无问题地创建和编译颤振项目,这只是让我担心的警告。以后会不会对java相关的包造成依赖问题?

【问题讨论】:

【参考方案1】:

一一执行这些命令,它解决了我在 MAC 中的问题。

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

ln -s ../jre jdk

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

【讨论】:

谢谢,成功了。【参考方案2】:

补充一下,我有 2 个版本的 Android Studio。我删除了一个。因此,您的机器中可能存在旧版/其他版本的 Android Studio。

【讨论】:

【参考方案3】:

请确保 Java 在您的 PATH 中,并且 JAVA_HOME 已定义并指向 JDK。我让 Windows 将 JRE 放在路径中而不是 JDK 中,这会导致各种问题。

请查看您的 PATH environment variable 并删除所有与 Java 相关但不指向 JDK folder 的内容。

Oracle 在此处提供了一些有关如何执行此操作的文档:Installing Java and setting JAVA_HOME。

希望能帮到你。

【讨论】:

你有最新版本吗? 以前我使用的是 OpenJDK 13,但它与 Android SDK 不兼容,并且因为 java 问题而不允许我安装它。目前我切换到 JDK 8u202,它工作得很好。 面临同样的问题。我安装了 32 位的 jdk8,因为它不适用于 64 位,并且现在将 %JAVA_HOME% 指向 32 位。但到目前为止还没有运气 谢谢。这为我解决了。我有一个旧版本保存在 JAVA_HOME (11.0.10) 中,而我的机器上有 11.0.13。另外,请注意您必须关闭并重新打开 shell 才能读取新的 env 变量。

以上是关于Flutter Doctor - 无法确定捆绑的 Java 版本的主要内容,如果未能解决你的问题,请参考以下文章

Flutter 2:无法确定捆绑的 Java 版本

Flutter Doctor 显示在 Doctor 上运行的 CentOS Linux 7 的 GTK 3.0 存在问题

Flutterflutter doctor 报错Android license status unknown. Run `flutter doctor --android-licenses‘(代码片段

Flutter Doctor CocoaPods 未安装

运行 Flutter Doctor 时出现 Flutter android 许可错误

Flutter Doctor:Xcode 安装不完整