Swift:无法在Jenkins中存档时导入桥接标头

问题描述:

我通过jenkins将iOS应用存档,作为使用xcode作为构建工具的持续集成过程的一部分。我们有三个与应用程序集成的框架。一切工作正常,但突然我在jenkins建设时遇到了下面的问题。Swift:无法在Jenkins中存档时导入桥接标头

Bridging-Header.h:25:9: error: 'xxx/xxy.h' file not found 
import xxx/xxy.h 
error: failed to import bridging header '/xxxx/xxxx/xxxx/xxxxxx_App-Bridging-Header.h' 
** BUILD FAILED ***** 

当我在xcode(7.3.1)中单独构建时构建成功,但通过jenkins失败,出现上述错误。

+0

您必须在构建设置中的目标C桥头再次拖放桥文件。看完全教程:https://iosdevcenters.blogspot.com/2015/12/how-to-calling-objective-c-code-in-swift.html –

+0

@kirit Sry它没有工作。在xcode中,当我构建成功,但在jenkins中导入桥接头时无法找到框架类文件。 – suresh

+0

@suresh再次删除您的桥接文件您可以再次执行本教程中的所有步骤,并在桥头中添加您的框架和Objective-C文件。 –

你得到一个错误:

enter image description here

未能导入桥接报 '/Users/MyName/Desktop/AppleDemo123/AppleDemo-Bridging-Header.h'

解决方案:

您检查您的网桥头文件中的所有导入文件,您的项目中已删除文件,但它已导入桥头文件。

从​​文件中删除导入文件。

+0

不起作用@kirit。 – suresh

+0

您正在检查所有文件,哪里有一些导入文件没有。 –

+0

上面看到我的图像“VidecontrollerApple.h”文件不在我的文件夹中,但它已经在桥文件中导入。然后发生上述错误。 –

感谢您的支持。我自己解决了这个问题,解决方法是将定义的框架添加到目标依赖项下,并且还需要在项目级别添加框架搜索路径中继承的路径,因为jenkins始终在导入xcode以生成构建时检查初始值。

+0

接受你的回答 –

+0

@suresh你的回答帮助我给出了一个正确的方向,但不清楚你在说些什么,对于那些在这里面临类似问题的人来说,答案是:回到你的项目构建设置 - >搜索路径 - >标题搜索路径,然后逐个拖放您的框架路径(如“$(SRCROOT)/ Headers/Private/CorePlot/ios”),然后清理并构建项目。这解决了我的归档问题。 – AmJa

+0

是的..确切地说,但确保框架被添加到目标依赖项下。 – suresh