You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xcode 15添加Framework提示“No Module Found”的解决方法

解决Xcode 15拖拽添加Framework后“No Module Found”的问题

以下是针对Xcode 15特性调整的排查和解决步骤,能覆盖常规方法无效的大部分场景:

一、先确认Framework本身的有效性

  • 检查架构兼容性:用lipo -info /path/to/your.framework/yourFramework命令查看,确保包含当前开发所需架构(比如iOS的arm64、Mac的x86_64/arm64)
  • 核对模块名:打开Framework包内的Info.plist,确认CFBundleName和你导入时写的模块名完全一致(大小写敏感)
  • 自定义Framework需确认:编译时Build Settings里的Defines Module已设为YES

二、修正Xcode 15的Framework添加流程

Xcode 15对拖拽添加的处理逻辑有变化,别沿用旧步骤:

  1. 拖拽Framework到项目根目录时,取消勾选“Copy items if needed”,先仅做引用
  2. 进入项目Build Phases:
    • 在Link Binary With Libraries中点击+号,选中该Framework添加
    • 在Embed Frameworks中同样添加该Framework,闭源第三方选Embed & Sign,自行编译的选Embed Without Signing
  3. 到Build Settings的Framework Search Paths,添加Framework所在的相对路径(比如$(SRCROOT)/Frameworks),并勾选Recursive

三、检查模块映射文件(自定义Framework专属)

如果是自行编译的Framework,需确认:

  • Framework包内的Headers目录下存在.modulemap文件,内容格式正确:
    framework module YourFrameworkName {
        umbrella header "YourFrameworkName.h"
        export *
        module * { export * }
    }
    
  • 若没有.modulemap,重新编译时确保Build Settings里的Module Map File路径正确指向生成文件

四、彻底清理缓存(比常规方法更彻底)

  1. 完全关闭Xcode,删除项目目录下的xcuserdata文件夹
  2. 打开终端执行:
    xcodebuild clean -project YourProject.xcodeproj -scheme YourScheme
    rm -rf ~/Library/Developer/Xcode/DerivedData
    
  3. 重启Mac后再重新打开项目构建

五、尝试切换构建系统

Xcode 15默认启用新构建系统,部分旧Framework可能存在兼容问题:

  • 打开项目文件(.xcodeproj或.xcworkspace),点击项目根节点进入Info标签页
  • 在Build System选项中切换为Legacy Build System,重新构建项目

内容的提问来源于stack exchange,提问作者Anas Lokhandwala

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 06:05:02