构建Cordova应用遇JDK版本及Android环境变量报错,如何解决?
解决Cordova构建时的环境变量与JDK版本错误
我之前在构建Cordova Android应用时也踩过一模一样的坑,结合官方文档和自己的调试经验,给你整理了分步解决方法:
一、优先解决JDK版本不兼容问题
Cordova构建Android应用强制要求JDK 8(1.8.*版本),高版本JDK会直接触发检查失败,具体操作:
- 下载并安装JDK 8(Oracle JDK 8或OpenJDK 8都可以,推荐选OpenJDK避免授权问题),安装路径建议选无空格、无中文的目录,比如
C:\Program Files\Java\jdk1.8.0_391 - 配置系统环境变量:
- 新建
JAVA_HOME变量,值设为你的JDK 8安装路径(比如上面的示例路径) - 编辑
PATH变量,添加%JAVA_HOME%\bin,并且把这条移到所有其他JDK相关路径的最前面,确保系统优先调用JDK 8的命令
- 新建
- 验证配置:打开全新的命令提示符/终端,输入
java -version,输出应该显示1.8.x的版本号,比如:java version "1.8.0_391" Java(TM) SE Runtime Environment (build 1.8.0_391-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.391-b13, mixed mode)
二、修复ANDROID_SDK_ROOT未定义问题
虽然你的ANDROID_HOME已经配置,但Cordova现在已经废弃这个变量,改用ANDROID_SDK_ROOT,需要补充配置:
- 新建系统环境变量
ANDROID_SDK_ROOT,值设为你的Android SDK路径:C:\Program Files (x86)\Android\android-sdk - 检查
PATH变量,确保包含以下Android相关路径(没有的话就添加):%ANDROID_SDK_ROOT%\platform-tools%ANDROID_SDK_ROOT%\tools- 如果你的SDK安装了cmdline-tools,还要添加
%ANDROID_SDK_ROOT%\cmdline-tools\latest\bin(这是新版SDK的命令行工具路径)
- 验证配置:打开全新的终端,输入
echo %ANDROID_SDK_ROOT%,应该输出你设置的SDK路径;输入adb version,能正常显示adb版本说明配置生效
三、关键注意事项
修改完环境变量后,必须关闭所有已打开的命令提示符、IDE(比如VS Code、Android Studio),然后重新打开,否则新的环境变量不会被加载,这是很多人容易忽略的点!
最后验证:进入你的Cordova项目目录,运行cordova requirements android,如果所有检查项都显示✓,就可以正常执行cordova build android构建应用了。
内容的提问来源于stack exchange,提问作者Sankar SK
相关产品推荐
相关产品推荐

