今天使用 cordova 创建项目后,添加 android 平台的时候一直失败,报错如下,记录下问题解决过程。

Using cordova-fetch for cordova-android@~7.1.1
Failed to fetch platform cordova-android@~7.1.1
Probably this is either a connection problem, or platform spec is incorrect.
Check your connection and platform name/version/URL.
Error: npm: Command failed with exit code 1 Error output:
npm ERR! Unexpected end of JSON input while parsing near '....2.0-nightly.2019.12.'

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/crane/.npm/_logs/2020-07-07T09_16_18_565Z-debug.log

在这里插入图片描述

1 系统环境

出现上面问题的开发环境如下:

  • 系统:MacOs Catalina
  • Cordova 版本:8.1.2 (cordova-lib@8.1.1)

2 尝试切换Android平台版本

因为之前的项目添加安卓平台时是7.0.0版本,当时是OK的,所以尝试指定使用 7.0.0 版本的Android平台,在项目目录下执行命令及结果如下:

 cordova platform add android@7.0.0

在这里插入图片描述

仍然是失败!!!

3 清理npm包缓存

参考网络资料有人建议清理npm包缓存,所以尝试一下,命令如下:

npm cache clean --force

在这里插入图片描述

4 重新建立项目尝试

执行完npm缓存清理后,删除原有项目并重新建立同名项目,然后在执行添加Android平台命令,如下图:
在这里插入图片描述
本次执行成功!如下图,再执行编译执行,也可成功执行:
在这里插入图片描述
在这里插入图片描述

5 参考资料

[1] cordova - Error: Failed to fetch platform android
[2] 亲测解决npm ERR! Unexpected end of JSON input while parsing near…的方法

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐