2021-12
1. Pod私库<aa>的OC源码中使用<aa>-Swift.h的问题
本次介绍的编译问题,满足2个条件就会出现
- A.h 属于 podspec的public_header
- A.h使用了 #import "aa-Swift.h"
分析
A.h 依赖 aa-Swift.h, aa-Swift.h依赖aa.modulemap,aa.modulemap依赖整个aa编译完成. 导致循环
解决方法:
方法一:将A.h从public_header中移除
方法二:A.h必须导出的时候,就不能使用aa-Swift.h;如果用到的是class对象,使用@class向前声明替代;如果使用的是枚举,OC不支持枚举向前声明,支持改成基本类型了,比如Int。
特别的
个人能力有限,欢迎大家指出问题