You need to enable JavaScript to run this app. Objective-C框架新增Swift文件后经Git仓库构建报错求助
优惠活动
大模型
产品
解决方案
定价
更多

Objective-C框架新增Swift文件后经Git仓库构建报错求助

问题说明

已查阅Stack Overflow同类问题、苹果官方文档及相关技术资料,仍无法解决当前编译问题,在此先感谢各位提供的帮助。

已完成的配置操作

框架侧相关配置

  • 项目为现有Objective-C框架,当前为框架新增Swift实现文件
  • 框架场景下不使用桥接文件,依赖系统自动生成的$(SWIFT_MODULE_NAME)-Swift.h文件,框架内引入该生成头文件统一使用<ProductName/ProductModuleName-Swift.h>格式
  • 涉及交互的Swift类已设置为公开访问权限,同时测试添加过@objc修饰
  • 涉及交互的Swift方法已添加@objc修饰,同时测试将方法设置为公开访问权限
  • 框架的公开头文件已将Identity属性配置为公开

业务使用侧相关配置

  • 所有需要调用Swift代码的Objective-C实现(.m)文件,均已引入上述Swift生成头文件
  • 涉及Swift类的使用场景,已在对应Objective-C类中做前置声明
  • 项目构建配置中Defines Module选项已设置为YES
  • 项目构建配置中Embed Swift Standard Libraries选项已设置为YES

当前编译异常表现

  • 编译阶段针对Swift类抛出报错:框架的header.h未在伞头文件(umbrella header)中找到
  • 补充观察:ProductModuleName-Swift.h文件在Objective-C头文件中可被正常识别,但在实现文件中无法被识别,不过当前仍可在Objective-C类中正常调用Swift类的方法

异常触发规律

  • 报错仅在基于Git仓库拉取代码构建框架时出现,使用本地直接拷贝的未关联Git的代码构建框架时,可正常编译
  • 初步排查判断:Git本身逻辑不会直接导致此类编译问题,目前仍在定位根因

内容的提问来源于stack exchange,提问作者Sonam Sodani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.07 15:06:03