存档项目时"无法导入桥接标头"、"找不到文件"



我在归档一个带有快速桥接头和框架的项目时遇到了一些问题。它给了我错误,但只有当我存档时。所以我做了一个新项目来进一步测试这一点。

以下是我的步骤:

  1. 新的swift项目
  2. 添加objective-c文件
  3. 当它提示我询问是否制作桥接标头时,请按"是">

此时,我归档。它成功了。

  1. 添加ASyncDisplayKit.xcodeproj
  2. 将libAsyncDisplayKit.a、AssetsLibrary和Photos添加到";将二进制与库链接";构建阶段
  3. 添加"-lc++-OjC";到项目链接器标志
  4. #import <AsyncDisplayKit/AsyncDisplayKit.h>添加到桥接标头

这些是此处的说明。

我再次归档,但它失败了,有两个错误:

找不到'AsyncDisplayKit/AsyncDisplayKit.h'文件

无法导入桥接标头"/Users/Andrew/Desktop/testProject/testProject/testProject桥接标头.h">

这是可复制的。我似乎很好地遵循了他们的指示,除此之外,我还没有接触过这个项目。

有趣的是,它构建良好,运行良好。但是归档会出现这些错误。

感谢您的帮助。

编辑:如果我使用CocoaPods导入它,它运行得很好。问题是,我的项目专门使用了子模块,而不是CocoaPods。如果把两者都用作为这个问题的解决方案,那将是一片混乱。

这家伙已经在这里解决了这个问题:https://github.com/nrcmedia/AsyncDisplayKit

暂时转到这个分支会让你摆脱这个问题。

它目前正在审查中,将被拉入Facebook:https://github.com/facebook/AsyncDisplayKit/pull/449

您是否检查了Project Build设置->swift编译器代码生成->objective-c桥接头是否设置为testProject bridging header.h?

我在一个项目中遇到了问题,我想在应用程序和Today应用程序扩展之间共享CoreData数据库,并为应用程序商店(Archive Build)准备应用程序。原因是找不到文件"+CoreDataModel.h",并且"无法导入标题"错误消息就是基于该文件。事实证明,相应的CoreData类本应由XCode生成,但它们是在调试模式下构建的,而不是在最终用于归档构建的发布模式下。关键的区别在于,版本构建是在编译模式"Whole Module"中构建的,而没有生成CoreData类。如果你在XCode中的"构建设置">"Swift编译器-代码生成">"发布"下切换到"增量",你可以将该应用程序构建为存档并上传到ITunes Connect。

最新更新