Linux Mint18(兼容Ubuntu)下Cordova环境SDK路径异常问题求助
解决Android SDK路径不一致及Cordova运行错误问题
看起来你遇到的两个问题是关联的——Android SDK组件的路径配置错误,导致sdkmanager抛出警告,同时Cordova找不到正确的系统镜像路径而报错。下面是一步步的解决办法:
一、修复SDK路径不一致的警告
1. 确认并配置正确的环境变量
首先要确保你的ANDROID_HOME环境变量指向了实际的SDK安装目录(也就是你看到的/home/felipe/Android/Sdk):
- 打开终端,编辑你的bash配置文件:
nano ~/.bashrc - 在文件末尾添加以下内容(替换成你的实际SDK路径):
export ANDROID_HOME=/home/felipe/Android/Sdk export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/27.0.3 - 保存文件后,让配置生效:
source ~/.bashrc
2. 重新安装路径异常的SDK组件
sdkmanager警告的组件(比如build-tools;27.0.3和emulator)安装在了非预期路径,最简单的办法是卸载后重新安装,让它们自动放到ANDROID_HOME指定的目录下:
- 卸载异常组件:
sdkmanager --uninstall "build-tools;27.0.3" sdkmanager --uninstall "emulator" - 重新安装:
sdkmanager --install "build-tools;27.0.3" sdkmanager --install "emulator" - 再次运行
sdkmanager list,应该就不会再出现路径不一致的警告了。
二、解决Cordova的「Package path is not valid」错误
这个错误本质是Cordova找不到正确的Android系统镜像,或者SDK路径配置未被正确识别:
1. 检查Cordova依赖配置
运行以下命令查看Cordova的依赖状态,确认SDK路径是否被正确识别:
cordova requirements
如果输出里显示Android SDK路径不正确,说明你的环境变量配置还没生效,重新执行source ~/.bashrc或者重启终端再试。
2. 安装正确的系统镜像
Cordova需要对应的Android系统镜像才能运行应用,你可以通过sdkmanager安装适合的镜像,比如针对Android 27的Google APIs镜像:
sdkmanager --install "system-images;android-27;google_apis;x86"
安装完成后,创建一个虚拟设备(AVD):
avdmanager create avd -n MyEmulator -k "system-images;android-27;google_apis;x86"
3. 手动指定SDK路径运行Cordova
如果环境变量配置后Cordova还是无法识别,你可以在运行命令时手动指定SDK路径:
cordova run android -- --sdk=/home/felipe/Android/Sdk
完成以上步骤后,再尝试运行你的Cordova项目,应该就能正常工作了。
内容的提问来源于stack exchange,提问作者Darkjaeger




