![](/img/trans.png)
[英]Please set the JAVA_HOME variable in your environment to match the location of your Java installation
[英]ERROR: JAVA_HOME is set to an invalid directory: Please set the JAVA_HOME variable in your environment to match the location of your Java installation
当我运行“flutter doctor --android-licenses”时,我努力修复下面的错误,
错误:JAVA_HOME 设置为无效目录:/usr/lib/jvm/java-11-openjdk-amd64
请在您的环境中设置 JAVA_HOME 变量以匹配您的 Java 安装位置。
我想我应该把它作为一个问题发布并提供一个回复,因为这个问题的其他答案对我没有帮助。
请在下面查看我的解决方案。
运行以下命令以选择您要使用的 java 版本。
sudo update-alternatives --config java
按您要使用的 java 版本对应的数字。 例如,按下以保留当前选择[*],或键入选择编号:0
复制您选择的 java 版本对应的 PATH。 就我而言,因为我选择了 0 号版本,所以我的 PATH 是 /usr/lib/jvm/java-11-openjdk-amd64/bin/java。 但是省略PATH 的最后一部分,即“/bin/java”。 所以现在你的 PATH 是 /usr/lib/jvm/java-11-openjdk-amd64
运行以下命令,其中 PATH 值是从上面复制的值。 export JAVA_HOME=PATH 就我而言,我将运行 JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
运行此命令,按原样复制它。 不要改变任何东西。 回声 $JAVA_HOME
按照这个命令,照原样复制它。 不要改变任何东西。 导出 PATH=$PATH:$JAVA_HOME/bin
运行此命令,回显 $PATH
这将给出您的 $JAVA_HOME 值的完整路径。
就我而言,这就是我得到的。 /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/ lib/jvm/java-11-openjdk-amd64/bin
现在你被排序了。
“颤振医生--android-licenses”,运行成功。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.