清理下电脑,发现自己电脑上的cocoapods经常出现的一个问题,就是一些经常用的第三方库cocoapods搜不到,比如SDWebImage
还有就是多用户下使用 ,pod -v 会出现Unknown command这样的问题
$pos list
命令发现M以后的库查询不到了,发现 $pod search
和 $pod list
查找的都是本地的第三方类库,并不是服务器的类库,于是原因肯定就出在本地和远程不同步的问题。
最后在网上找了写资料也有解决的办法使用 pod repo update master 命令同步远程服务器的第三方类库, 发现有可能是网络问题,有可能是远程服务器就是github,然后类库列表不全。然后想到了另外的办法,有大神在gitcafe和oschina上建立了CocoaPods索引库的镜像。因为gitcafe和oschina都是国内的服务器,所以在执行索引更新操作时,会快很多。
$pod repo remove master
$pod repo add master https://gitcafe.com/akuandev/Specs.git
$pod repo update
//或者可用http://git.oschina.net/akuandev/Specs.git即可使用oschina上的镜像。
然而我是~
卸载了重新装了一遍,装了一个高版本的
一、cocoapods卸载
1.在装之前最好先卸载点老版本
$ sudo gemuninstall cocoapods【Mac10.10之前】
$ sudo gem uninstall -n /usr/local/bin cocoapods【Mac10.11之后】
2.查看本地安装过的cocopods相关东西
$gem list --local | grep cocoapods
显示如下:
cocoapods(1.0.1)
cocoapods-core(1.0.1)
cocoapods-deintegrate(1.0.1)
cocoapods-downloader(1.1.1)
cocoapods-plugins(1.0.0)
cocoapods-search(1.0.0)
cocoapods-stats(1.0.0)
cocoapods-trunk(1.0.0)
cocoapods-try(1.1.0)
然后使用命令逐个删除
$sudo gem uninstall cocoapods-core
$sudo gem uninstall cocoapods-deintegrate
....
二、安装CocoaPods
安装CocoaPods总体步骤:Xcode—>home-brew—>ram—>ruby—>cocopods
在安装CocoaPods之前要先配置好RUBY环境,本文就怎么安装RUBY的环境进行一总结。安装Ruby环境首先需要安装Xcode然后需要安装Homebrew,接下来需要安装RVM最后安装Ruby环境。安装XCode就不用说了,大家都会。
Homebrew是一个包管理器,用于在mac上安装一些os x上没有的UNiX工具。Homebrew将这些工具统统安装到了/usr/local/Cellar目录中,并在 /usr/local/bin中创建符号链接。
ruby -e”$(curl -fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)”
$ curl -L https://get.rvm.io | bash -s stable
然后,载入 RVM 环境
$source ~/.rvm/scripts/rvm
检查一下是否安装正确
$ rvm-v
rvm 1.28.0 (latest) by Wayne E. Seguin<wayneeseguin@gmail.com>, Michal Papis<mpapis@gmail.com> [https://rvm.io/]
- 用RVM安装Ruby环境
可以先查询已经安装的ruby
$ rvm list
卸载一个已安装版本
$ rvm remove 2.0
列出已知的ruby版本
$rvm list known
可以选择现有的rvm版本来进行安装(下面以rvm 2.3.0版本的安装为例)
$ rvm install 2.3.0
ps: 更新ruby的过程中遇到的问题
There has been anerror while running make. Halting the installation
这个错误信息是因为电脑中有多个版本的Xcode
这样解决
1、 终端输入
xcode-select–install
2、 此时会弹出一个软件安装信息 点击安装安装结束后继续在终端输入
rvm install 2.3
或者这样的错误
….
makingsrcs under enc
/bin/sh: /Users/你的用户名/Downloads/Xcode: No such file ordirectory,
需要usexcode-select --switchpath/to/Xcode.app
to specify the Xcode that you wish to use for command linedeveloper tools
这里需要等上一段时间
a.设置Ruby版本
RVM 装好以后,需要执行下面的命令将指定版本的 Ruby 设置为系统默认版本
$ rvm 2.3.0 --default
同样,也可以用其他版本号,前提是你有用 rvm install
安装过那个版本
这个时候你可以测试是否正确
$ ruby -v
ruby2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15]
b.安装coocapods 其实也需要FQ的,这里不多说了,直接切换到淘宝镜像服务器
查询:
$ gem sources -l
可以查看当前是什么连接,然后替换方式如下:
$ gem source -rhttps://rubygems.org/
$ gem source -ahttps://ruby.taobao.org/
要想验证是否替换成功了,可以执行:
$ gem sources -l
成功显示
***CURRENT SOURCES ***
https://ruby.taobao.org/
c.这里开始安装cocoapods
$ sudo gem install cocoapods //苹果系统升级 OS X EL Capitan 之前
$ sudo gem install -n /usr/local/bincocoapods --pre //苹果系统升级 OS XEL Capitan 后
$ pod setup
Terminal会停留在Setting up CocoaPods master repo 这个状态一段时间,是因为要进行下载安装,而且目录比较大,需要耐心等待一下
看到最后一条
gems installed
表示安装成功了
更新gem(可选)
$ sudo gem update --system
三、coocapods 的使用
- 使用xcode 创建一个项目 然后cd 进入文件夹
- 执行命令 touch Podfile 创建 podfile 文件
- 打开podfile文件 open -e Podfile ,或者拖动文件直接使用 xcode打开
在文件中输入
platform:ios, '8.1'
use_frameworks! //swift支持
注意:新版本要加上下面两句话
target "项目的名称" do
//这里不写版本号,默认是下载最新的
pod 'AFNetworking'
pod 'MJRefresh', '~> 3.1.9'
pod 'RBStoryboardLink', '~> 0.1.4'
…….
end
注意:’项目名称’是你项目文件中’xx.xcodeproj’文件,’xx.xcodeproj’去掉后缀名所得的‘xx’==(就是)‘你的项目名称’
如果不加会报以下错误
[!]The dependency AFNetworking (~> 3.0)
is not used in any concrete target.
最后执行命令:
pod install
完成.
如后面需添加新的库 使用 pod search SDWebImage
搜索你需要找的库
然后pod update 更新就好了
不FQ,解决安装第三方库慢,更新第三方库慢得问题
$ pod install --verbose--no-repo-update
$ pod update --verbose--no-repo-update
个人还是建议FQ,保持服务器的类库和本地同步。
ps:关于Xcode中的cocoapods插件的使用。
Mac10.11之后XcodecocoaPads插件,pod命令不能成功,
则需要对应的插件上gem path 通过下列命令可以查找出。例如:/usr/local/bin/
~ whichruby_executable_hooks
/Users/你的用户名/.rvm/gems/ruby-2.3.3/bin/ruby_executable_hooks
或者
➜ ~ which pod
/usr/local/bin/pod
- RVM 是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换。 ↩