Node与Cordova版本不匹配:适配Cordova 4.2.0的Node版本查询
适配Cordova 4.2.0的Node.js版本及404错误解决办法
我之前维护老Cordova项目时也踩过这个坑,Cordova 4.2.0是个相当老旧的版本,对Node.js的版本兼容性要求很苛刻,你试错没成功大概率是没找对匹配的版本——必须用Node.js 0.12.x系列的版本,其中0.12.18是经过很多开发者验证的稳定适配版本。
至于你碰到的Cordova仓库www返回404的问题,本质是新Node版本的npm包管理逻辑和老版Cordova的依赖结构不兼容:老Cordova在拉取资源时依赖的是旧的npm仓库路径或请求方式,高版本Node的npm会解析错误,导致请求的资源路径不存在,最终返回404。
给你一套实操步骤,按这个来应该能解决:
- 推荐用nvm-windows(Windows下的Node版本管理器)来切换版本,避免卸载重装的麻烦
- 安装nvm后,打开命令行执行:
nvm install 0.12.18 - 切换到该版本:
nvm use 0.12.18 - 重新安装对应版本的Cordova:
npm install -g cordova@4.2.0 - 回到你的项目目录,执行
cordova prepare或者cordova build,这时候应该不会再出现404错误了
如果还是有问题,可以检查下项目根目录的config.xml里有没有指定过时的插件仓库地址,替换成当前可用的地址,但大部分情况下,只要Node版本匹配,这个404问题就能解决。
内容的提问来源于stack exchange,提问作者Mini Bhati
相关产品推荐
相关产品推荐

