Xcode调试iOS应用时CoreData模块Security库加载失败如何解决?
修复单元测试中CoreData模块Security库加载失败的问题
遇到的错误:
error: warning: Failed to load linked library Security of module CoreData - errors: Looking for "@rpath/Security.framework/Security", error: (null)
可以尝试以下几种解决方案:
检查并配置测试Target的Framework依赖
- 选中单元测试Target,进入「Build Phases」→「Link Binary With Libraries」
- 确认
Security.framework已添加;若未添加,点击「+」搜索并添加该系统框架 - 将
Security.framework的状态设置为Optional,避免强制依赖导致加载失败
修正Framework搜索路径
- 选中测试Target,进入「Build Settings」
- 搜索「Framework Search Paths」
- 添加
$(SDKROOT)/System/Library/Frameworks到路径列表中,确保系统框架能被正确找到
清理缓存并重启Xcode
- 按下
Cmd+Shift+K清理项目编译缓存 - 前往Xcode「Settings」→「Locations」,找到Derived Data路径并删除对应文件夹
- 完全退出Xcode后重新打开项目
- 按下
调整测试运行配置
- 点击Xcode顶部运行方案,选择「Edit Scheme」
- 进入「Test」→「Info」标签页,确认测试Target的「Debug executable」选项已勾选
- 尝试切换测试运行设备(模拟器/真机),排查设备环境导致的路径解析问题
这个错误大多源于测试Target的依赖配置缺失,或是Xcode缓存引发的框架路径解析异常。Security作为系统核心框架,本身无需额外导入,但单元测试Target的独立配置可能出现遗漏,通过以上步骤基本可以解决问题。
内容的提问来源于stack exchange,提问作者Alessandro Francucci
相关产品推荐
相关产品推荐

