You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac端cordova-hot-code-push-plugin运行iOS项目报错咨询

问题现象

使用cordova-hot-code-push-plugin实现热代码推送功能,安卓端运行无异常,在Mac环境执行cordova run ios命令运行iOS项目时出现报错,报错信息如下:

CHCP plugin after prepare hook:
Failed to load iOS project file. Maybe your Cordova version is not supported?

当前使用的开发工具版本信息:

cordova 11.0.0
cordova-ios 6.2.0
Xcode 13.3
Build version 13E113
报错原因

cordova-hot-code-push-plugin官方已停止维护,内置的iOS端prepare钩子脚本仅适配cordova-ios 5.x及更早版本的项目结构。cordova-ios 6.0及以上版本调整了Xcode项目文件的存放路径,钩子脚本按原有逻辑无法定位到.xcodeproj文件,就会抛出该报错。

可行解决方案
  • 方案1:本地修改插件脚本适配高版本cordova-ios
    1. 打开项目中插件目录下的cordova-hot-code-push-plugin/scripts/lib/iosWKWebViewEngineSupport.js文件(如果找不到该文件,直接在插件目录搜索.xcodeproj关键字定位对应逻辑即可)
    2. 找到脚本中匹配iOS项目文件的代码,原有逻辑一般是var projectFiles = glob.sync('platforms/ios/*.xcodeproj');,将匹配规则修改为var projectFiles = glob.sync('platforms/ios/**/*.xcodeproj');,让脚本可以递归扫描子目录下的项目文件
    3. 保存修改后重新执行cordova run ios即可验证效果

    提示:如果后续重新安装插件、重新添加iOS平台,本地修改的内容会被覆盖,建议把修改后的插件存放到项目本地目录,通过本地路径安装插件避免配置丢失。

  • 方案2:更换为社区维护的兼容版热更新插件
    原插件停更后有开发者fork维护了兼容版本,已经适配cordova-ios 6+、cordova-android 10+等新版本环境,卸载原插件后安装兼容版本即可,不需要手动修改代码。
  • 方案3:降级cordova-ios版本
    如果不想修改插件代码也不想更换插件,可以将iOS平台版本降级到原插件适配的5.1.1版本,执行命令cordova platform rm ios && cordova platform add ios@5.1.1重新安装平台即可,注意降级后需要匹配对应支持的Xcode版本,避免触发其他兼容问题。

内容的提问来源于stack exchange,提问作者cy lee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.02 02:57:25