我有Android Studio 3.0版 当我使用颤振医生命令时,它会显示以下内容,

无法找到绑定的Java版本

我目前的Java版本是Windows 10上的(build 1.8.0_131-b11)。

我的电脑上没有任何旧版本的Android Studio。


当前回答

我使用macos big sur 11.5.1也有上述情况,并已成功修复错误:

无法在Flutter &&上找到捆绑的Java版本 ! 部分Android许可不被接受。要解决此问题,请运行:flutter doctor—android-licenses

如果需要修复,则安装CH-0 / 203.7678000

cd ~/Library/Application\ Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/203.7678000/Android\ Studio.app/Contents/jre 

sudo ln -s ../jre jdk

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

flutter doctor --android-licenses

flutter doctor -v

其他回答

苹果硅用户问题解决了!

首先这样做:Flutter Doctor——android-licenses: Exception in thread "main" java.lang.NoClassDefFoundError

然后:

确保在.zshrc中设置Java_Home路径,使用这里已经列出的相同文章。他解释了使用.zshenv,但我们将编辑.zshrc文件。

https://mkyong.com/java/how-to-set-java_home-environment-variable-on-mac-os-x/#what-is-usrlibexecjava-home

从系统中卸载Java 从Azul重新安装M1特定版本。选择“Java 16”。选择ARM 64位https://www.azul.com/downloads/?package=jdk

这就是我被困的地方,但最终找到了解决办法

执行以下命令:

cd / apps /Android\ Studio.app/Contents/jre ln -s /Library/Java/JavaVirtualMachines/zulu-16。jdk jdk 颤振医生-v

如果它与JAVA_HOME路径无关,那么尝试以下方法:

C:\Users\Administrator\AppData\Local\谷歌 并删除旧版本的AndroidStudioXXX。X文件夹 现在再去找扑动医生 它修复了我的问题。

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

请查看您的PATH环境变量并删除所有与Java相关的不指向JDK文件夹的内容。

Oracle有一些关于如何做到这一点的文档:安装Java和设置JAVA_HOME

对于那些在最新的Android Studio - Electric Eel版本和其他预览版中遇到这些问题的人,请注意Android Studio安装文件夹中捆绑的jre目录现在被重命名为jbr

要解决这个问题,只需创建一个sym链接jre -> jbr, Flutter就不会报怨。

在Linux上

cd ~/android-studio/ && ln -s jbr jre

Windows(检查安装文件夹)

cd C:\Program Files\Android\Android Studio
mklink /D "jre" "jbr"

or

New-Item -ItemType SymbolicLink -Path .\jre -Target .\jbr

苹果操作系统

cd /Applications/Android\ Studio.app/Contents
ln -s jbr jre

注意,如果你正在运行预览版本,根据你的操作系统,默认的安装目录可能是不同的,例如在Linux上

~/android-studio-preview/

在这两种情况下,您都可以通过运行命令检查安装目录

flutter doctor -v

此外,如果您运行时遇到权限问题,您可以尝试使用sudo或admin权限运行该命令,具体取决于您的操作系统。

当我运行颤振医生时,我得到了这个错误。

解决方案:

进入显示Error的路径后面的“java”文件。 然后右键单击该文件,进入属性。 然后进入权限,勾选“允许将文件作为程序执行”。 最后,跑去看扑医生没有发现问题!