(一)方案一
原理: SDK Manager.exe 通过调用 android-sdk-windows oolslibfind_java.bat 确认 java.exe 的路径
启用 cmd.exe,命令行切换路径到 android-sdk-windows oolslib,执行 find_java.bat,看到输出:C:Windowssystem32java.exe。
虽然该路径下存在 java.exe,但是这并不是 jre 的安装路径。
可能原因:
由于某些需要 java 的软件在安装时,将 java.exe、javaw.exe、javaws.exe 复制到了 c:windowssystem32 下,导致 SDK Manager.exe 调用了错误位置的 java.exe 所致
解决方法:
删掉 C:Windowssystem32 下的 java.exe、javaw.exe、javaws.exe ,可以进入 cmd 再切换路径执行 find_java.bat 检查一下, 输出:C:Program FilesJavajre7injava.exe 就没问题了;
(二)方案二
找到 D:Program Files (x86)Javaandroid-sdk-windows ools 下的 android.bat 进行修改:(右键 对其进行编辑)
将 rem Check we have a valid Java.exe in the path.这行下面的
set java_exe=改为set java_exe="D:Program Files (x86)Javajdk1.7.0_07
binjava.exe"(java.exe的所在位置)
call libfind_java.bat
if not defined java_exe goto :EOF
这两行就可以删掉了
(三)方案三
从上述方法中依次尝试都没有解决我的问题,并且已经卸载重新安装过N次,
最终解决方法:
还是要按照上述两种方案先改完之后,再进行 第三个方案;
打开cmd 命令工具, 在 D:Program Files (x86)Javaandroid-sdk-windows ools 下 执行 命令:android.bat
报错如下:
通过各种尝试,终于发现了一个适合我这个错误的解决方案
打开环境变量,通过在 path环境变量中添加 c:windowssystem32
然后重新尝试 运行命令 android.bat 然后就可以打开 SDK Manager.exe 的程序了;
PS: 这个可能是因为我之前手动将path的变量全部重写了的原因,建议再更改变量的时候,如果有变量无需重新添加,只需修改即可,切勿将原来的变量值直接删除;