如果有必要的话升级gem(基于Ruby的安装工具)
sudo gem update --system
使用sudo命令需要输入管理员密码
输入时没有回显也不能删除 必须一气呵成
更换Ruby源(对抗天朝伟大的墙)
删除原来的Ruby源
gem sources --remove https://rubygems.org/
添加淘宝的镜像服务器
gem sources -a http://ruby.taobao.org/
ERROR: Could not find a valid gem ‘cocoapods‘ (>= 0), here is why:
Unable to download data from http://ruby.taobao.org/ - bad response Not Found 404 (http://ruby.taobao.org/latest_specs.4.8.gz)
解决办法:换源地址
- gem sources --remove http://ruby.taobao.org/ //移除原文件地址
- gem sources -a https://ruby.taobao.org/ //添加新文件地址
- gem sources -l //查看源文件地址是否正确
- sudo gem install cocoapods //更新
这一步可能需要等待一些时间
如果更换成功可以使用下面的命令看到添加成功的源
验证Ruby镜像是并且仅是taobao
gem sources -l
结果:
*** CURRENT SOURCES ***
http://ruby.taobao.org/
接下来使用下面的命令安装CocoaPods
sudo gem install cocoapods
这一步需要更长的时间
新建Xcode项目
在项目文件夹路径下终端添加一个Podfile文件
vim Podfile
标点符号必须是英文
在文件中添加如下所示的配置
platform :ios, '7.0'
pod ‘AFNetworking’ //不显式指定依赖库版本,表示每次都获取最新版本
pod ‘AFNetworking’, ‘2.0’ //只使用2.0版本
pod ‘AFNetworking’, ‘> 2.0’ //使用高于2.0的版本
pod ‘AFNetworking’, ‘>= 2.0’ //使用大于或等于2.0的版本
pod ‘AFNetworking’, ‘< 2.0’ //使用小于2.0的版本
pod ‘AFNetworking’, ‘<= 2.0’ //使用小于或等于2.0的版本
pod ‘AFNetworking’, ‘~> 0.1.2’ //使用大于等于0.1.2但小于0.2的版本
pod ‘AFNetworking’, ‘~>0.1’ //使用大于等于0.1但小于1.0的版本
pod ‘AFNetworking’, ‘~>0’ //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本
然后保存退出。vim环境下,保存退出命令是:
:wq
然后运行下面的命令
pod install
报错
[!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `master`.
You can try adding it manually in `~/.cocoapods/repos` or via `pod repo add`.
pod repo add
报错
[!] Adding a repo needs a `NAME` and a `URL`.
pod setup
报错
[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --depth=1
xcrun: error: active developer path ("/Volumes/Xcode/Xcode.app/Contents/Developer") does not exist, use `xcode-select --switch path/to/Xcode.app` to specify the Xcode that you wish to use for command line developer tools (or see `man xcode-select`)
xcode
xcode-select xcodebuild xcodeproj
sudo xcode-select --switch /Applications/Xcode.app
Password:
pod setup
这一步可能会无比的缓慢(注意第三方库版本)
如果安装成功会看到另一个项目文件 CocoaPods.xcworkspace
如果修改了Podfile文件
就执行下面的命令更新第三方库
pod update
如果需要查询要使用的第三方库
可以执行下面的命令
pod search AFNetworking
问题描述:
github下载的Demo,很多时候使用到CocoaPods,有的时候因为依赖关系或者版本问题不能编译运行。出现例如The sandbox is not sync with the Podfile.lock问题时候,如下所示
diff: /../Podfile.lock: No such file or directory
diff: Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.`
解决方案
关闭当前的工作空间,删除掉文件夹中的workspace,然后重新pod install,install完成之后,通过workspace打开工作空间,clean+build即可,如下所示
rm -rf MyProject.xcworkspace
rm -rf Pods
rm Podfile.lock
rm -rf /Users/~/Library/Developer/Xcode/DerivedData/MyProject_******
pod install
在pod install之前,请确保已经执行pod setup命令。
参考链接:CocoaPod异常处理,The sandbox is not sync with the Podfile.lock
http://www.bubuko.com/infodetail-1020786.html
其他有关CocoaPods使用的相关好文章
CocoaPods的官网:https://cocoapods.org/
唐巧的技术博客:http://blog.devtang.com/blog/2014/05/25/use-cocoapod-to-manage-ios-lib-dependency/?utm_source=tuicool&utm_medium=referral
Code4App:http://code4app.com/article/cocoapods-install-usage
http://www.exiatian.com/cocoapods安装使用及配置私有库/
CocoaPods详解之----进阶篇:http://blog.csdn.net/wzzvictory/article/details/19178709
CocoaPods详解之----使用篇:http://blog.csdn.net/wzzvictory/article/details/18737437
CocoaPods详解之----制作篇:http://blog.csdn.net/wzzvictory/article/details/20067595