OC与swift混编 #import "项目名-Swift.h"失效问题

时间:2022-06-01 21:06:41

由于项目多个环境部署,每次改配置比较麻烦,所以线上环境一个TARGETS,内部环境一个TARGETS,

都知道oc和swift混编的时候,会生成一个'项目名-Swift.h'文件,这个文件是隐式的,需要在oc调用swift的时候导入进来

注意一下,这个文件正确的生成名字应该是 :'Product Name-Swift.h'

线上环境配图:

OC与swift混编 #import "项目名-Swift.h"失效问题

代码中引入配图:

OC与swift混编 #import "项目名-Swift.h"失效问题

这份上面这份代码是没任何问题也不会编译出错,好了,我开始配置内测环境的target了

内测环境配置:

OC与swift混编 #import "项目名-Swift.h"失效问题

ProductName默认是根据你的TARGETS来的,所以在代码中引入就错了

OC与swift混编 #import "项目名-Swift.h"失效问题,这样引入会报错,正确的应该是

‘#import 'ePayProject_internal-Swift.h'’

但是这样搞很不方便,毕竟两个环境代码肯定是一份代码,只是配置不一样,所以只能改配置,这里我把productname改成了和线上一样的配置 就OK了! 编译成功!

另附查询资料过程中比较好的解决方案:

https://blog.csdn.net/timtian008/article/details/53007669