pod install error , 项目包含框架冲突

简介: 背景导入三方资源的时候发现一个报错, 修改完 podfile 之后终端执行 $ pod install. 提示错误The 'Pods-ProjectName' target has frameworks with conflicting names: nimsdk.framework 虽然看提示很清楚知道是项目中已包含了 nimsdk, 但是一下子并没有想到到底是因为那里出了问题导致.原因一般是由于 podfile 新导入的库与原有项目中的 framework 有包含或者依赖关系导致。

背景

导入三方资源的时候发现一个报错, 修改完 podfile 之后终端执行 $ pod install. 提示错误
The 'Pods-ProjectName' target has frameworks with conflicting names: nimsdk.framework 虽然看提示很清楚知道是项目中已包含了 nimsdk, 但是一下子并没有想到到底是因为那里出了问题导致.

原因

  1. 一般是由于 podfile 新导入的库与原有项目中的 framework 有包含或者依赖关系导致。
  2. 之前使用手动导入库的方式, 后面修改成 cocoaPod 进行管理, 但是 Project 内残留 Pod 导入库的相关类等等. 导致冲突。

解决

  • 针对第一种:

项目版本管理的强大之处就这个时候就很好的提现出来了. 比较喜欢用 git。
一般这种情况, 在执行 podfile 之前, 项目正常编译通过的情况下, 我们直接通过 git 或者 svn checkout 回到上一个版本, 或者如果这次修改内容过多, 可以执行针对 podfile 进行 checkout 即可.
$ git checkout Podfile
然后在重新 pod install 回到正常版本.

即可知道是具体由于那一个 framework 与原有项目中存在冲突, 在进一步针对具体情况进行解决即可。

  • 针对第二种:

    需要检查 Project 里面是否包含导入三方库的相关类等等, 如果存在的话删除或者注释掉, 然后重新
    $ pod install 即可

注意看注释

有些三方资源是相互依赖或者包含的关系, 可能由时候我们之前使用的是同一个组织, 或者开发者的三方库等等. 这时候就经常出现这种问题, 在遇到报错的时候, 可以去仔细看一下项目的 使用注释, 一般都会有相关介绍和提示。 然后直接删掉有包含关系的那个即可!

比如之前在使用 云信通讯框架的时候, 首先引入的是 NIMSDK, 后面发现 NIMKit, 然后没有注意看文档介绍, 直接在 podfile 新增了 pod 'NIMKit', 就会出现上面的错误。

到官方查看文档才 发现 NIMKit 这个 framework 已经包含了 NIMSDK, 所以直接将 NIMSDK 删除掉, 直接使用 NIMKit 就可以了.

参考

iOS-[!] The 'Pods-你的项目名' target has frameworks with conflicting names: UMMobClick.

最后

希望此篇文章对您有所帮助,如有不对的地方,希望大家能留言指出纠正。
谢谢!!!!!
学习的路上,与君共勉!!!

本文原创作者:Jersey. 欢迎转载,请注明出处和本文链接

目录
相关文章
如何使用命令生成RSA2密钥
说明:   本帖主要说明如何使用命令来生成RSA2密钥。    使用密钥工具生成RSA2密钥(推荐使用):    帖子地址:[url]https://openclub.alipay.com/read.
1992 12
|
图形学
unity3d UI特效处理,image置灰shader
新建材质,材质指定该shader,然后将材质球拖拽到image上面,效果就显示出来了 图片.png Shader "UI/ImageGreyShader" { Properties { [PerRendere...
3457 0
|
11月前
|
Windows
禁止ie自动跳转edge
禁止ie自动跳转edge
345 0
|
iOS开发 开发者
【Xcode】解决Unable to process request - PLA Update available
【Xcode】解决Unable to process request - PLA Update available
982 0
|
存储 安全 编译器
我给 iOS 系统打了个补丁——修复 iOS 16 系统键盘重大 Crash
我给 iOS 系统打了个补丁——修复 iOS 16 系统键盘重大 Crash
202 7
我给 iOS 系统打了个补丁——修复 iOS 16 系统键盘重大 Crash
|
Dart
Flutter笔记:手动配置VSCode中Dart代码自动格式化
Flutter笔记:手动配置VSCode中Dart代码自动格式化
1318 5
|
安全 Android开发 对象存储
使用 obfuscation 代码混淆保护你的 Flutter 应用程序
本文将会和大家说下保护代码的重要性,和如何给程序加上混淆编译功能。 尽可能的不要在你的程序中写死各种服务秘钥,比如 oss 容易被盗用。
273 1
使用 obfuscation 代码混淆保护你的 Flutter 应用程序
|
前端开发 JavaScript 开发者
【前端革新力】React与CSS-in-JS完美邂逅:从styled-components到emotion,全面解析样式管理新趋势的实战应用与优势剖析!
【8月更文挑战第31天】CSS-in-JS 作为一种新兴的样式管理方式,近年来在前端社区受到广泛关注。它将样式嵌入 JavaScript,实现了样式与逻辑的高度耦合,提升了开发效率并解决了全局样式污染等问题。本文通过具体代码示例,探讨 CSS-in-JS 在 React 开发中的应用,并分享实践心得。首先介绍了 CSS-in-JS 的基本概念,然后详细展示了如何使用 styled-components 和 emotion 这两个流行库创建样式化组件。
601 0
|
iOS开发
解决IOS上架App Store后显示语言为英文的问题
解决IOS上架App Store后显示语言为英文的问题
330 0
|
iOS开发
iOS之使用模拟器报错:resource fork, Finder information, or similar detritus not allowed完美解决方案
iOS之使用模拟器报错:resource fork, Finder information, or similar detritus not allowed完美解决方案
6841 0