您的位置:首页 > 移动开发 > IOS开发

iOS开发对于第三方类库的管理-cocoapods

2016-03-03 16:35 495 查看

cocoa pods的安装及使用:

在安装时,终端会需要键入密码,因为密码输入时的不可见性,单输入错误时会按回车会有提示出现。一:在mac环境下一般都有自带的ruby环境,使用时仅需要进行升级。在终端下的命令:$ sudo gem update --system查看ruby环境的版本信息:$ ruby -v如果Ruby没有安装,请参考 http://www.cnblogs.com/daguo/p/4097263.html。 二:安装CocoaPods时我们要访问cocoapods.org,用淘宝的RubyGems镜像来代替官方版本,执行以下命令:$ gem sources --remove https://rubygems.org/ 等到有反应后键入命令:$ gem sources -a https://ruby.taobao.org/ ********* 淘宝目前已停用http协议的镜像服务,在配置中用https代替**************查看ruby下的sources的命令$ gem sources -l只有在终端中出现下面文字才表明你上面的命令是成功的:*** CURRENT SOURCES *** https://ruby.taobao.org/ 三 :安装Cocoapods,在终端输入命令:$ sudo gem install cocoapods等上十几秒钟,CocoaPods就可以在你本地下载并且安装好了,不再需要其他设置。,1.使用search命令搜索类库名$ pod search AFNetworking三.CocoaPods的使用(1)在终端shell中cd 来到你要管理的项目(2)添加第三方库搜索一个开源库$ pod search AFNetworking在工程目录里建一个Podfile文件$ touch Podfile键入内容:$ vim Podfile内容按这个格式来platform :iOS,'9.0'pod 'ASIHTTPRequest', '~> 1.8.2'在编辑完后按 esc,然后按":",这个时候输入wq保存退出运行:podinstall 你的工程就多了个xworkspace文件夹,以后用这个打开工程四.CocoaPods的使用心得(1)最近使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动 原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,命令如下:pod install --verbose --no-repo-update pod update --verbose --no-repo-update$ pod install只会按照Podfile的要求来请求类库,如果类库版本号有变化,那么将获取失败。但是 $ pod update会更新所有的类库,获取最新版本的类库。每次用$ pod update就行。(2)安装一个xcode插件管理工具 http://alcatraz.io,执行curl-fsSL https://raw.github.com/supermarin/Alcatraz/master/Scripts/install.sh |sh 完了打开xcode->window->package manger 搜cocoapods安装,方便操作。(3)用到svn,git多人协作的话,Pods/这个文件夹不要上传,.../Pods/Pods.xcodeproj ...Pods/Target Support Files/这些每次编译都会改动从而引起合并代码的时候冲突
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的版本,相当于>=0.1.2并且<0.2.0
pod ‘AFNetworking’, ‘~>0.1′     //使用大于等于0.1但小于1.0的版本
pod ‘AFNetworking’, ‘~>0′     //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本
问题处理:升级ruby
sudo gem update —system
按照网上的教程,来到这一步应该就是要执行“sudo gem install cocoapods”来下载cocoa pods了,但是将系统升级到了10.11后,会发现不好使,个人猜测是10.11修改了部分目录的权限,导致无法cocoapods下载的时候无法写入默认目录,具体提示为:
ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/fuzzy_match
在stackoverflow上搜索,顺利找到了解决方法,改掉将默认下载目录的环境变量,这里需要改两个值:
GEM_PATH
GEM_HOME
,一个是让别人找到cocoapods,一个是它下载的路径,这里你可以理解为两个作用一样就好啦,具体操作如下:先新建一个存放cocoapods等其他gems的目录:
mkdir -p $HOME/Software/ruby
再通过以下命令更改两处环境变量
export GEM_HOME=$HOME/Software/ruby
export PATH=$PATH:$HOME/Software/ruby/bin
需要注意的export命令只对当前终端窗口有用,关闭或者在其他窗口操作需要重新再敲一次,当然你也可以把上述命令放在 /etc/profile文件中,这样下次登录后会执行这里面的命令。通过以上步骤,下载cocoapods了,命令为:
gem install cocoapods
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: