You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Swift 4 项目归档时出现“No such module”错误求助

解决Swift 4项目通用iOS设备构建/归档时Pod框架“No such module”错误

这种问题我碰到好多次了,别慌,按下面的步骤一步步来,大概率能解决:

  • 先彻底重置CocoaPods环境
    手动添加Pod框架到Linked Frameworks and Libraries只会越搞越乱,先把那些手动加的框架都删掉,然后执行以下操作:

    1. 关闭Xcode,删除项目目录下的Podfile.lockPods文件夹和.xcworkspace文件
    2. 打开终端,进入项目目录,依次执行:
      pod deintegrate
      pod install
      
    3. 重新用.xcworkspace文件打开项目,别再用.xcodeproj了!
  • 检查Xcode Build Settings的关键配置
    很多时候是配置没继承Pod的设置导致的:

    1. 选中主Target,进入Build Settings,找到Framework Search Paths,确保里面包含$(inherited)${PODS_ROOT}/**,如果没有就加上,记得把原来乱加的无效路径删掉
    2. 找到Other Linker Flags,同样要确保有$(inherited),这个是链接Pod框架必须的
    3. 找到Build Active Architecture Only,在Release模式下一定要设为NO——通用设备需要构建全架构,设为YES会导致部分架构的Pod框架找不到
  • 检查Build Phases的Pod脚本
    选中主Target的Build Phases,确认下面两个脚本存在:

    • [CP] Embed Pods Frameworks
    • [CP] Copy Pods Resources
      如果没有,说明CocoaPods没正确关联到你的Target,重新执行pod install一般就能修复
  • 排查Pod版本兼容性
    有些老Pod对Swift 4或者通用设备的支持有问题,可以尝试更新Pod到最新兼容版本:
    在Podfile里把对应Pod的版本号改成~> 最新兼容版本,然后执行pod update [Pod名称],或者直接pod update更新所有Pod

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

火山引擎 最新活动