iOS 如何在一个已经存在多个project的workspace中引入cocoapods管理第三方类库
一种新的第三方库管理工具:Carthage
如何使用Carthage管理iOS依赖库
Podfile Syntax Reference v1.1.0.rc.3
https://guides.cocoapods.org/syntax/podfile.html
正文:
具体方法在
iOS 如何在一个存在多个project的workspace中引入cocoapods管理第三方类库
Cocoapods 版本1.0.1
我在按上述链接转换的时候,遇到的问题:
1,
[!] `xcodeproj` was renamed to `project`. Please update your Podfile accordingly.
Solution:
xcodeproj 'MyProj/MyProj.xcodeproj'
just replace xcodeproj to project
project 'MyProj/MyProj.xcodeproj'
2,eg:
[!] The `Ecosphere [Debug]` target overrides the `HEADER_SEARCH_PATHS` build setting defined in `../Pods/Target Support Files/Pods-Ecosphere/Pods-Ecosphere.debug.xcconfig'. This can lead to problems with the CocoaPods installation
- Use the `$(inherited)` flag, or
- Remove the build settings from the target.
[!] The `Ecosphere [Debug]` target overrides the `OTHER_LDFLAGS` build setting defined in `../Pods/Target Support Files/Pods-Ecosphere/Pods-Ecosphere.debug.xcconfig'. This can lead to problems with the CocoaPods installation
- Use the `$(inherited)` flag, or
- Remove the build settings from the target.
......
这种警告是不能忽视的,它带来的直接后果就是无法通过编译。
而产生此警告的原因是项目 Target 中的一些设置,CocoaPods 也做了默认的设置,如果两个设置结果不一致,就会造成问题。
我想要使用 CocoaPods 中的设置,分别在我的项目中定义`PODS_ROOT` 和 `Other Linker Flags`的地方,把他们的值用`$(inherited)`替换掉,
进入终端,执行 pod update
警告没了,回到 Xcode,build通过。
网上还流行另外一种简单粗暴的方法
点击项目文件 project.xcodeproj,右键`显示包内容`,用文本编辑器打开`project.pbxproj`,删除`OTHER_LDFLAGS`的地方,保存,回到 Xcode,编译通过。
因为我的工程已经对 "HEADER_SEARCH_PATHS" 和"OTHER_LDFLAGS"做过配置,
所以 在对应的工程Build Settings中对应的地方填上:
$(inherited) ,解决;
3,
在使用cocospods的时候,如果修改了导入的第三方库源文件,那么当使用pod update的时候修改的代码会被作者的原文件覆盖掉。
所以问题来了,遇到确实需要修改源代码的时候,解决方案
1. 不用cocoapods改用手动导入第三方库
2. 将需要修改的第三方库fork一份到自己的github,在里面做完修改之后,将podfile修改为:
platform :ios, '7.0'
pod '要导入的库', :git => 'https://github.com/我的github/要导入的库'
4,
iOS 如何在一个已经存在多个project的workspace中引入cocoapods管理第三方类库的更多相关文章
- iOS开发 使用Cocoapods管理第三方类库
每次上github看到一些优秀的代码,总能看到Podfile,也了解是个管理第三方类库的,今天抽时间学习了一下,挺简单的! 作用: 太多 还是复制一下把!!! CocoaPods是什么? ...
- iOS边练边学--cocoaPods管理第三方框架--命令行方式实现
更换源 Gem是一个管理Ruby库和程序的标准包,它通过Ruby Gem(如 http://rubygems.org/)源来查找.安装.升级和写在软件包 gem sources --remove ht ...
- iOS之在webView中引入本地html,image,js,css文件的方法 - sky//////////////////////////////////////ZZZZZZZZZZZZZZZ
iOS之在webView中引入本地html,image,js,css文件的方法 2014-12-08 20:00:16CSDN-sky_2016-点击数:10292 项目需求 最近开发的项 ...
- iOS教程:如何使用Core Data – 预加载和引入数据
这是接着上一次<iOS教程:Core Data数据持久性存储基础教程>的后续教程,程序也会使用上一次制作完成的. 再上一个教程中,我们只做了一个数据模型,之后我们使用这个数据模型中的数据创 ...
- iOS 10 中引入了 Message 框架
WWDC 2016 上最重磅的消息之一就是在 iOS 10 中引入了 Message 框架.开发者现在可以为苹果内置的 Messages 应用开发扩展啦.通过开发一个应用扩展,你可以让用户跟应用在 M ...
- iOS 常用第三方类库、完整APP示例
一.第三方类库 1:基于响应式编程思想的oc地址:https://github.com/ReactiveCocoa/ReactiveCocoa2:hud提示框地址:https://github.com ...
- iOS中的CocoaPods用法及常用命令
CocoaPods是什么? ***CocoaPods的使用场景:*** 1. 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用 ...
- iOS开发常用的第三方类库
在iOS开发中不可避免的会用到一些第三方类库,它们提供了很多实用的功能,使我们的开发变得更有效率:同时,也可以从它们的源代码中学习到很多有用的东西. Reachability 检测网络连接 用来检查网 ...
- iOS第三方类库JSPatch(热更新)
---------------------------------------------------------------------------------------------------- ...
随机推荐
- Sqlserver 导出数据脚本
编写数据压缩选项的脚本 true 要编写脚本的数据的类型 仅限数据
- shell计算小问题
1.shell处理两数相加时报错: req_all=$(($hits+$misses)) error: invalid arithmetic operator (error token is &quo ...
- leetcode pow(x,n)实现
题目描述: 自己实现pow(double x, int n)方法 实现思路: 考虑位运算.考虑n的二进制表示形式,以n=51(110011)为例,x^51 = x^1*x^2*x^16*x^32,因此 ...
- web前端基础知识jQuery-补
一.JS正则 1.定义正则表达式 JavaScript种正则表达式有两种定义方式,定义一个匹配类似 <%XXX%> 的字符串: 1)构造函数 var reg=new RegExp('< ...
- YUM源
由于自己想做一个简单的博客玩玩,需要去搭建apache,mysql和php,如果只是用rpm安装包的话,安装的速度太慢不说,最主要的是包之间的关联太让人蛋疼了,所以最好还是是用yum来安装吧,当然这只 ...
- Jquery插件Ztree使用所遇问题
问题1.$.fn.zTree为空或为Undefined 我在MVC中引用Jquery插件Ztree的JS并不存任何问题,而当我将Ztree的js引入项目中,就出现$.fn.zTree为空或为Undef ...
- AngularJS中控制器之间通信方法
在同个angular应用的控制器之间进行通信可以有很多种不同的方式,本文主要讲两种: 基于scope继承的方式和基于event传播的方式 基于scope继承的方式 最简单的让控制器之间进行通信的方法是 ...
- Good Bye 2015 D. New Year and Ancient Prophecy
D. New Year and Ancient Prophecy time limit per test 2.5 seconds memory limit per test 512 megabytes ...
- C语言 06 指针
int *p; //第一个*是象征意义. p = &a; 等价于 int *p = &a; //第二个*是不正确的 *p = &a; //第三个*是访问指针变量指向的存储空间. ...
- 从零开始调用一个手机号归属地查询API
自从过上程序员的生活,身边总是或多或少的提及一些API(应用程序接口),网上各种入门教程.实例大把大把,有的只是贴上部分代码,也不给注释, 写Demo的时候连编译都无法通过.下面我从小白开始来介绍下调 ...