Ionic1 iOS平台构建报错求助:编译GCDWebServerDataRequest失败
解决Ionic1 iOS构建时GCDWebServer编译失败的问题
看起来你遇到的是cordova-plugin-ionic-webview插件和旧版Xcode(7.1)不兼容导致的编译错误——新版本的插件使用了Xcode 7.1不支持的Objective-C语法,所以才会出现GCDWebServerDataRequest.m编译失败的情况。结合你的环境(OS X Yosemite只能用Xcode 7.1),给你几个可行的解决步骤:
1. 降级cordova-plugin-ionic-webview到兼容版本
当前你安装的cordova-plugin-ionic-webview@1.1.16已经不再支持Xcode 7.x,需要降级到更早的兼容版本:
# 先卸载当前插件 ionic cordova plugin remove cordova-plugin-ionic-webview # 安装兼容Xcode7的旧版本 ionic cordova plugin add cordova-plugin-ionic-webview@1.0.22
2. 清理并重新添加iOS平台
有时候旧的构建缓存会导致问题,彻底清理后重新添加平台:
# 移除现有iOS平台 ionic cordova platform rm ios # 重新添加你当前使用的iOS 4.5.4版本 ionic cordova platform add ios@4.5.4 # 清理构建缓存 ionic cordova clean ios
3. 避免路径中的空格
注意到你的项目路径包含Google Drive(有空格),这可能导致xcodebuild命令解析路径出错。建议把项目移动到没有空格的路径下,比如:
mv "/Users/otero/Google Drive/coursera/full stack web development/course 4/ionic/conFusion" /Users/otero/coursera/conFusion
之后在新路径下重新执行构建命令:
ionic cordova build ios
4. 确认Xcode命令行工具配置
确保Xcode的命令行工具选择的是正确的版本:
- 打开Xcode
- 点击顶部菜单
Xcode->Preferences - 切换到
Locations标签页 - 在
Command Line Tools下拉菜单中选择Xcode 7.1 (7B91b)
完成这些步骤后,重新尝试构建应该就能解决这个编译错误了。
内容的提问来源于stack exchange,提问作者João Otero
相关产品推荐
相关产品推荐

