我已经在我的系统 < code > C: Program Files Java jdk1.8.0 _ 中设置了 JAVA_HOME 我尝试在命令提示符下运行 cordova 命令(cordova build) ,但是我得到了下面的错误。我尝试了所有的方法,但是不能解决这个问题
JAVA_HOME
错误: JAVA _ HOME 被设置为无效目录: C: Program 文件 Java jdk1.8.0 _ 131 bin;
请在您的环境中设置 JAVA_HOME变量以匹配 Java 安装的位置。
你应该把它设置成 C:\Program Files\Java\jdk1.8.0_12。
C:\Program Files\Java\jdk1.8.0_12
不需要 \bin 。
\bin
JAVA_HOME应该指向主 jdk 目录,而不是 jdk/bin目录。
jdk/bin
你需要像这样设置 JAVA_HOME:
JAVA_HOME="C:\Program Files\Java\jdk1.8.0_131"
删除 \bin,也删除结尾的 ;。重新启动 cmd 并运行。
;
试试以下方法:
在 Window10上,问题出在分号 ;上。
转到 edit the system environment variables并删除 JAVA_HOME值 C:\Program Files\Java\jdk1.8.0_144末尾的分号
edit the system environment variables
C:\Program Files\Java\jdk1.8.0_144
换句话说,把这个 C:\Program Files\Java\jdk1.8.0_12;转换成 C:\Program Files\Java\jdk1.8.0_12
C:\Program Files\Java\jdk1.8.0_12;
您可能必须删除 Windows 对话框中的条目并创建一个新条目。如果您曾经有多个条目并得到较大的 表格视图,Windows 会自动在每个条目的末尾插入一个 ;,即使您只剩下一个条目。
将 JAVA _ Home设置为 C: Program Files Java jdk1.8.0 _ 172
不要使用具有以上 JAVA _ HOME 值的分号“ ;”
要验证设置是否正确,请转到 命令提示符检查 C: ... . > Sdkmanager —— list
一个完整的列表将出现,让您现在,它是成功地保存。
否则它将显示 JAVA _ HOME 路径设置不正确的错误。
JAVA _ HOME 应该是 C:\Program Files\Java\jdk1.8.0_172,不要在路径中包含分号(;)或 bin。任何 jdk 版本以上7将工作。此外,您需要重新启动 cmd
C:\Program Files\Java\jdk1.8.0_172
我认为您需要从 java 路径的末尾删除‘ ;’。
设置 JAVA _ HOME 变量后,以管理员身份运行 android Studio
您只需使用 C: Program Files Java jdk1.8.0 _ 12进行设置。
并检查使用新的 cmd。它将被更新
首先尝试从路径中删除“ bin”并设置主目录 JAVA _ HOME 如下: C: Program Files JAVA jdk1.8.0 _ 131
第二次更新系统:
第三次重启码头。
参考 链接设置窗口中的 java 路径。
我是在安装 Flutter 的时候用谷歌搜索 Android 许可证的问题时发现这个问题的。
对于 Linux,更新您的 ~/.bashrc(或其他 shell 配置)文件,在末尾添加以下代码行:
~/.bashrc
JAVA_HOME=/usr/local/android-studio/jre
注意: 我按照 Linux 官方安装指南(链接)安装了 Android 工作室。
对于 窗户,使用 android 工作室到 jre目录的路径,并用正确的值更新环境变量。
jre
然后,运行 flutter doctor --android-licenses和按 y审查不被接受的许可证。 为每个许可证按 y。它将在许可证文件的末尾询问 Accept? (y/N):。 在你接受所有未获接纳的牌照后,你应该看到:
flutter doctor --android-licenses
y
Accept? (y/N):
All SDK package licenses accepted
请删除/bin 甚至分号; 从 JAVA _ HOME 解析。
检查系统变量中 JAVA_HOME的重复条目。
在我的例子中,上面的答案都不起作用,但我有两个 JAVA_HOME条目,删除一个工作。
jenv
在我的例子中,我使用了 jenv,但是没有设置 Java 版本,所以 jenv 指向的路径实际上是一个 Java 安装。
当我运行 echo $JAVA_HOME时,它显示的是 /Users/username/.jenv/versions/system,并且没有这样的文件或目录。
echo $JAVA_HOME
/Users/username/.jenv/versions/system
我只需要执行 jenv global 15 或者 jenv local 15,以指定我实际想使用的版本,并且当我重新运行 echo $JAVA_HOME时,JAVA_HOME发生了变化。
jenv global 15
jenv local 15
关于 Linux和 Mac:
java -XshowSettings:properties -version 2>&1 > /dev/null | grep 'java.home'
java.home = /usr/lib/jvm/java-11-openjdk-amd64
/usr/lib/jvm/java-11-openjdk-amd64
~/.zshrc
export JAVA_HOME=<resultFirstStep>
我已经设置了这样的 VS 项目代码。它为我工作
JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_321.jdk/Contents/Home"
在复制 JDKPATH 时,排除其中的 bin 文件夹。
例如:。
C: Program Files Java jdk-15.0.2
你的路径应该看起来像吹,你只需要编辑它,并删除垃圾箱文件夹
C: Program Files Java jdk-15.0.2 bin