iOS开发之 -- CocoPods的安装和使用
以前项目中使用过Pods 1.0,最近项目中也有用到,因为很长时间没用了,所以配置了下,谁知道,中间出现了不少坑,特记录在此博客,其实pods的使用也就是几个终端命令而已,可能随着系统的升级,以前的终端命令,会因为电脑里面配置了其他的环境,比如react native 等,会影响到pos的配置
安装过程如下:
1,打开终端,输入命令:"gem sources -l"来查看镜像是否被墙,如图(下面的镜像是我替换过以后的图像),注:这里输出如果是:https://rubygems.org/ 镜像的话,我们要删除这个镜像,然后添加镜像:https://ruby.taobao.org/ (已废弃),
具体操作如下:
<1>删除原始镜像:gem sources --remove https://rubygems.org/
<2>添加新的镜像:gem sources -a https://ruby.taobao.org/(已废弃),现在使用:https://gems.ruby-china.com
<3>查看是否更改成功:在此输入命令,如下图:(就修改成功了)
3,接下来我们要进行安装pods的重要步骤了:(sudo gem install -n /usr/local/bin cocoapods)
注意:在这个过程中,会出现一些错误,具体的错误可以自行百度,这里只列举我安装时遇到的几个比较典型的例子:因为配置过react native的环境(自己百度的),所以在失败过几次后,我就从电脑里面把react navtive的环境给删除掉了,
可以参考:http://www.jianshu.com/p/77f02887630e
如果一切顺利,大概过了个10分钟,如果你网速特别慢的话,可以多等等,如果出现下图,就表示安装成功了

4,接下来我们检测是否安装成功:直接输入pod 然后按两下tab键,可以看到下图:
或者直接输入终端命令:pod search AFNetworking,出现下图:
即为安装成功.
如果没有出现,不要慌,打印下 pod命令:pod --version ,如果出现下图:
表示安装成功,如果没有,别急,往下看,可能是master的问题,也可能是gem的问题,ruby的问题,
我遇到的是:Pod /usr/bin/git clone https://github.com/CocoaPods/Specs.git master 问题,可以参考:http://www.jianshu.com/p/90ca71b3b94a
碰到的问题,这篇大神波可以有很详细的解答,如果直接出现上图,恭喜你安装成功!~
别高兴的太早,安装成功,可不意味着,直接可以用了,想知道怎么用吗,?接着往下看:
1,在桌面上创建一个项目,然后使用CD命令:cd /Users/hero11223/Desktop/CocoaPodTest ,切换到此目录下如图:
2,上面是demo的根目录,然后我们要创建Podfile文件,命令如下:touch Podfile
这里就不上图了,直接输入命令就行,然后打开桌面demo的文件夹,会出现一个Podfile的文件,如图:
出现这个文件,然表示我们创建成功了!
接下来,操作Podfile文件,有两种方法:
第一种:使用vim命令,如下:
(1)比如我们要导入AFNetworking这个第三方库,我们执行如下命令:pod search AFNetworking,如下图:
红框框中的就是我们要写入到Podfile中的文件;
(2)使用vim命令,输入命令:vim Podfile ,然后点击 i ,下面会出现INSERT的字样,这个时候,我们就可以写入类库了,注:这里的写入命令和以前有了不一样,具体如下图:
里面的MyAPP就是你demo的名字,比如我的demo名字是:CocoaPodTest,直接替换掉就可以了,
platform :ios, '8.0'
use_frameworks!
target 'CocoaPodTest' do
pod 'AFNetworking', '~> 3.1.0'
end
写入完成后,我们要怎么退出vim呢,写入完成后,我们点击左上角的ESC键,然后下面的INSERT字样,消失,我们输入一个":"号,然后输入wq,(wq的意思是保存退出的意思),然后回车,
最后再输入:
pod install
或者 pod install --verbose 命令,耐心等待1分钟左右的时间,如果出现下图:
就表示你已经成功导入AFNetworking第三方库了;
然后我们打开项目,看到:
如果出现红框框里面的东西,就表示彻底成功了!
如果遇到什么问题,比如,pods安装成功,导入不成功,
可以参考:http://blog.csdn.net/jxt141014_150214/article/details/54092482
第二种方法:就是直接在Podfile文件里面写入,最后在终端里面输入此命令:pod install --verbose --no-repo-update ,就可以了,不过我一直用的第一种方法,第二种方法的话,没有尝试,有兴趣的朋友可以尝试下!
如何在工程中导入第三方库的头文件呢:
点击“+”号添加一项:并且输入:“$(PODS_ROOT)”(没有引号),选择:recursive(会在相应的目录递归搜索文件),如下图:
使用cocopods更新类库:
在终端输入:pod update 或 pod repo update
,就可以了~!
补充:
出现这种错误:
<span style="font-family:SimSun;color:#ffffff;background-color: rgb(0, 0, 0);">E325: ATTENTION
Found a swap file by the name ".ceshi.c.swp"
owned by: root dated: Sat Jul ::
file name: /c/ceshi.c
modified: YES
user name: root host name: c66-WR
process ID:
While opening file "ceshi.c"
dated: Sun Jul ::
NEWER than swap file!
解决Swap file ".ceshi.c.swp" already exists!问题
用下面的命令删除swp文件
rm .{your file name}.swp
例如:我的文件名是ceshi.c 那么就用这样的命令:rm .ceshi.c.swp (当然你前面也可以加-rf强制删除)
亲测有效!
iOS开发之 -- CocoPods的安装和使用的更多相关文章
- IOS开发之开篇--CocoaPods安装
CocoaPods是什么?当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其 ...
- iOS开发-开发文档安装
iOS开发肯定离不开开发文档,苹果有在线帮助文档,xCode其实可以下载模拟器文档和iOS8.1文档的,不过下载的速度实在不敢恭维,而且比较头疼的是不显示下载进度条的,苹果的开发文档都是放在)/应用程 ...
- OpenCV iOS开发(一)——安装(转)
OpenCV是一个开源跨平台的的计算机视觉和机器学习库,可以用来做图片视频的处理.图形识别.机器学习等应用.本文将介绍OpenCV iOS开发中的Hello World起步. 安装 OpenCV安装的 ...
- ios开发第一步--虚拟机安装MAC OS X
暂时还没买Macbook,先用虚拟机练练手. 先说说准备工作,我是在win8下安装的,这个不是关键的,只要Vmware版本和MAC OS X版本确定就行了,win7下同样可以. 1.虚拟机Vmware ...
- ios开发判断手机是否安装微信app
1.代码如下 if ([WXApi isWXAppInstalled]) 2.如果以上代码无效,请在plist文件中添加如下内容
- iOS开发之--cocopods相关问题及解决方法
Note: as of CocoaPods 1.0, `pod repo update` does not happen on `pod install` by default 解决办法:删除工程中的 ...
- ios开发第三方库--cocoapods安装
1. ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)&quo ...
- iOS开发中如何使自定义方法具有XCode插件使用提示
iOS开发中难免要安装一些好用的插件,然而插件在使用时往往只对系统的方法有提示作用,而自己写的方法不能用上插件的便利. 其实还是有办法使插件对自定义的方法有效: 1. 首先知道Xcode的插件安装路径 ...
- iOS开发 cocoapods的安装以及使用
一.概要 iOS开发时,项目中会引用许多第三方库,CocoaPods(https://github.com/CocoaPods/CocoaPods)可以用来方便的统一管理这些第三方库(从一个坑出来,又 ...
随机推荐
- 笔记本装ubuntu发热量大该如何缓解?
win7下的双卡技术是optimus, 驱动完善,不会让两个显卡同时满负荷工作, linux下由于驱动软件闭源, xorg的开源驱动没有做这个显卡电源管理, 目前的N卡较好解决方案就是bumblebe ...
- Centos 开启telnet-service服务
1. 查看linux版本信息: [loong@localhost ~]$ cat /etc/issue CentOS release 5.8 (Final) Kernel \r on an \m 2. ...
- C# 项目发布到IIS后不能用log4net写日志
在代码中正确配置了log4net后,IIS上仍然不能写日志的情况下,只需在写日志的目录添加 IIS_IUSRS 用户,并赋与读写权限即可.
- Oracle相关操作示例(导出导入dmp需要采用)
删除用户:drop user pnxd cascade; 导出数据:exp pnxd/padmin@A file=c:\bb.dmp full=y 导入数据:imp pnxd/padmin@PNXD ...
- ASP.NET给DataGrid,Repeater等添加全选批量删除等功能
很多情况下,在管理或者查看列表的时候我们需要很需要“全选”这个功能,这在ASP.NET中是非常容易实现的,下面我就将演示一点小代码实现这一功能. 实现全选的还是js的一个小函数: [code] ...
- php回调函数原理和实例
原理 自己调用自己 称之为“递归”,而不是回调 你也知道回调的关键是这个回既然是回,那么就有一个谁是主体的问题,因为回调是往回调用的意思我调用了函数A,而函数A在执行过程中调用了我提供的函数B,这个函 ...
- REST 和 SOAP、RPC 有何区别?
第一个问题:什么是RESTful? REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的.有兴趣可以看看这里论文`,谁是Fielding?点击前面名字了解. 那RE ...
- 如何隐藏你的 Linux 的命令行历史
如果你是 Linux 命令行的用户,有的时候你可能不希望某些命令记录在你的命令行历史中.原因可能很多,例如,你在公司担任某个职位,你有一些不希望被其它人滥用的特权.亦或者有些特别重要的命令,你不希望在 ...
- 线程相关函数(7)-sem_post(), sem_wait() 信号量
sem_tsem_initsem_waitsem_trywaitsem_timedwaitsem_postsem_destroy 生产者消费者实例: #include <stdlib.h> ...
- 再谈Nginx Rewrite, 中文URL和其它
上次谈到过Nginx和中文URL的问题,这几天又加深了认识. 多分享几个关于Nginx Rewrite的经验. Nginx匹配指定中文URL的方法:rewrite "(*UTF8)^x{66 ...