Cordova应用无法在Xcode 7.3中归档(Cordova / CDVViewController.h文件未找到)

8
我有一个使用Cordova(6.1.1)/Phonegap(5.3.10)的项目。我试图使用Xcode 7.3构建ipa文件。当我点击Product > Archive时,构建失败并显示日志:'Cordova/CDVViewController.h'文件未找到。我可以成功地将项目构建到设备上,所以我不知道问题可能是什么。
我尝试更改Header Search Path,从
"$(OBJROOT)/UninstalledProducts/include"

"$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include"
从这篇文章中阅读: Xcode 7.2: In “Archive”: Getting the issue: “Cordova/CDVViewController.h’ file not found ”. While there is no such issues in building the app 我尝试将启用bitcode更改为“否”,但仍无法在我的应用程序中进行归档。
根据在stackoverflow上的许多阅读,问题似乎与头搜索路径有关,但这没有解决我的问题。不知道Xcode 7.3是否还有其他问题,因为其他帖子都是针对Xcode 7.2及以下版本的。不知道如何解决此问题,是否有其他人遇到过这个问题?
更新(解决方案):
在Build Settings > Deployment > Install owner下,我将其留空,然后它最终起作用了。

你尝试过在Header Search Paths的debug和release部分都进行操作吗? - Gandhi
1
尝试一下这个: 1)在终端中运行以下命令:cordova platform update ios 2)在Xcode中打开您的项目 3)进入偏好设置 -> 位置 -> 高级 4)选择“唯一”作为构建位置选项 5)Product -> Clean 6)Product -> Build - Gandhi
1
谢谢您的回复。我尝试了,但仍然没有运气。 - msk
刚在Xcode7.3(7D175)和cordova 6.1.1中进行了测试,对我来说运行良好。 - Gandhi
记录一下,@Gandhi的方法在我使用Xcode 7.3.1和Cordova 6.2.0时有效。 - wumbo
@wumbo 感谢你的更新。我已经发布了答案,请给个赞如果有帮助,这样其他人也能受益。干杯! - Gandhi
3个回答

17

试试这个,应该可以解决问题。

  • 在终端中运行此命令: cordova platform update ios

  • 在Xcode中打开您的项目

  • 进入偏好设置->位置->高级

  • 选择“唯一”作为构建位置选项

  • Product -> Clean

  • Product -> Build

也可以尝试执行 cordova platform update ios,它已经为提问者解决了问题。


1
“cordova platform update ios” 是我缺少的部分,解决了这个问题。非常感谢。 - Michał Rakowski
@甘地 谢谢你!! - Dom Hede
对我来说,选择“唯一”作为构建位置选项。 - Adriano Spadoni
1
哇,我花了很长时间寻找答案,这个解决了问题。谢谢!Ionic/Cordova项目从终端构建得很好。但在Xcode 9中构建失败了。这不是项目特定的问题,因为对于每个Ionic/Cordova项目都是一样的。对我来说,解决方案也是选择“唯一”作为构建位置选项。它被设置为“传统”。 - Wouter

1
如果您已经尝试了上述所有建议,但仍然无法正常工作。您可以尝试以下操作:

首先检查是否有“CordovaLib”文件夹,位于:platforms->ios

其次,请确保您的“资源”文件夹中有图标和闪屏图片。

如果没有:

$ ionic resources

然后运行:

ionic platform remove ios
ionic platform add ios

这些命令将安装“CordovaLib”文件夹,然后再次进行构建。

0

这在Xcode 8上不起作用。您必须重新安装最新版本的Cordova,并删除平台,然后再添加它。

npm un cordova
sudo npm install -g cordova // yarn global add cordova

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接