`

CocoaPods第三方框架从0到1-2016年11月17日

阅读更多

最近安装CocoaPods,在网上找了一下资料,发现文章要么过时,要么各种报错。都是抄来抄去,没有靠谱的,特意整理了一下最新的教程,并亲测成功。taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务

第一步:安装rvm,

不管需不需要升级ruby,rvm可以让你拥有多个版本的Ruby,并且可以在多个版本之间自由切换。如果已经安装过跳到第2步(rvm -v 查看是否安装)

$ curl -L get.rvm.io | bash -s stable

//需要等一会

$ source ~/.bashrc

$ source ~/.bash_profile

等待终端加载完毕,后输入

rvm -v

 


 

如果能显示版本好则安装成功了。

第二步:安装ruby

CocoaPods目前安装需要Ruby的版本大于2.2.2,不然会报错:Error installing pods: activesupport requires Ruby version >= 2.2.2。目前Mac系统默认自带是2.0,所以需要升级。

查看已安装的ruby:

rvm list

如果已安装版本大于2.2.2,直接到第3步。

ruby -v  //也可以查看ruby版本

//列出ruby可安装的版本信息

rvm list known

rvm install 2.2.2  //安装一个ruby版本

 


 

这里一定要设置为默认版本

rvm use 2.2.2 --default

 

第三步:更换源

我们需要来修改更换源(由于国内被墙)所以要把源切换至ruby-china在终端执行以下命令

目前网上文章大都是这面这种:

$ sudo gem update --system

$ gem sources --remove https://rubygems.org/

//等有反应之后再敲入以下命令

$ gem sources -a https://ruby.taobao.org/

这里是个大坑:会报错_connect returned=1 errno=0 state=SSLv3 read servercertificateB:certificate verify failed (https://ruby.taobao.org/specs.4.8.gz)

这是因为taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务,正确的操作是:

$ sudo gem update --system

$ gem sources --remove https://rubygems.org/

$ gem sources --remove https://ruby.taobao.org/       //如果安装了淘宝的镜像

//等有反应之后再敲入以下命令

gem sources -a https://gems.ruby-china.org/

为了验证你的Ruby镜像是并且仅是ruby-china,可以用以下命令查看:

$ gem sources -l

只有在终端中出现下面文字才表明你上面的命令是成功的:

*** CURRENT SOURCES ***

https://gems.ruby-china.org/

# 确保只有 gems.ruby-china.org

 

第四步:安装CocoaPods

sudo gem install -n /usr/local/bin cocoapods

再加一句,完美解决

sudo xcode-select --switch/Applications/Xcode.app

在终端中输入如下命令来完成安装:

pod setup

它需要一点时间来完成,我反正是挂机等了一晚,你等就是了

如果安装失败 ~/.cocoapods 里面是空的,就需要重新setup

命令如下:

pod repo remove master

pod setup

完毕之后这个文件夹大概有 100多M,需要花费比较多时间,请耐心等待。

到这里你已经成功安装了CocoaPods

为了确定CocoaPods是否可以使用,可以用CocoaPods的搜索功能验证一下。在终端中输入:

$ pod search AFNetworking

过一段时间之后(可能会比较久),你会在终端中看到一些红色的错误信息,如下:

Setting up CocoaPods master repo

[!] /usr/bin/Gitclone 'https://github.com/CocoaPods/Specs.git' master --depth=1

Cloning into 'master'...

error: RPC failed; result=52, HTTP code = 0

fatal: The remote end hung up unexpectedly

这说明CocoaPods还不能正常使用,需要更新pod,下载它的一些依赖包;在终端中输入:

$ pod setup

过一段时间之后,你会在终端中看到跟上面同样的红色的错误信息。

敲入以上命令时,小编终端上是这个样子的(由于太长,仅截取前面一部分):


 

这说明某些环境原因导致pod更新不了,可能原因有,1)gem版本太低;2)github无法链接;3).cocoapods目录下的配置信息错误。我们可以一个一个来排除,

首先更新gem到最新版本,在终端中输入:

$ sudo gem update --system

然后检查是否可以ping通github,在终端中输入:

$ ping github.com

然后查看pob repo list:

$ pod repo list

结果显示0 repos,说明没有安装成功;

删除.cocoapods目录,重新下载pod更新:

$ cd ~/.cocoapods/

$ sudo -rm -rf ~/.cocoapods/

重新执行pod setup,过一段时间后提示setup completed,在终端中输入 pod list,展示出安装列表;

敲入以上命令时,小编终端上是这个样子的(由于太长,仅截取前面一部分):


 

 

 

 

 

看到这里,你心里会不会说,我靠!太爽了,终于下载并且安装好了!接下来看下如何使用吧。。

我们先创建这个神奇的PodFile。在终端中进入(cd命令)你项目所在目录,然后在当前目录下,利用vim创建Podfile,运行:

$ vim Podfile

然后在Podfile文件中输入以下文字:

需要注意的是podfile里面输入的格式变了。

platform :ios, '8.0'

target '你的项目名称' do

pod 'AFNetworking', '~> 3.1.0'

end

然后保存退出。vim环境下,保存退出命令是:

:wq

这时候,你会发现你的项目目录中,出现一个名字为Podfile的文件,而且文件内容就是你刚刚输入的内容。注意,Podfile文件应该和你的工程文件.xcodeproj在同一个目录下。

这时候,你就可以利用CocoPods下载AFNetworking类库了。还是在终端中的当前项目目录下,运行以下命令:

$ pod install

 


 

注意最后一句话,意思是:以后打开项目就用 CocoaPodsDemo.xcworkspace 打开,而不是之前的.xcodeproj文件。否则无法关联pod下来的类库。

 



文/wu大维(简书作者)
原文链接:http://www.jianshu.com/p/2ef8a38416c4
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

 

分享到:
评论

相关推荐

    第三方框架

    本文将深入探讨“第三方框架”这一主题,特别是涉及到JSON工具的使用。 首先,让我们理解什么是第三方框架。在iOS开发中,第三方框架是由非Apple官方提供的库或工具集合,它们通常由个人开发者、开源社区或公司开发...

    使用cocoapods下载第三方库

    CocoaPods是iOS和macOS开发中广泛使用的依赖管理工具,它可以帮助开发者方便地集成、管理和更新第三方库。在本文中,我们将深入探讨如何使用CocoaPods来下载和管理第三方库,以便于简化你的iOS或macOS项目开发。 **...

    cocoapods-xcode-plugin-master

    CocoaPods 是 iOS 和 macOS 开发中广泛使用的依赖管理工具,它可以帮助开发者轻松管理和集成第三方库。Xcode 插件则是在 Xcode 开发环境中扩展功能的一种方式,"cocoapods-xcode-plugin-master" 正是这样一个专门...

    CocoaPods的搭建与部署.pptx

    CocoaPods 项目的源码在 Github 上管理,该项目开始于 2011 年 8 月 12 日,由此经过多年发展,已经成为 iOS 开发事实上的依赖管理标准工具。 使用 CocoaPods 之前的问题 ------------------------- 在使用 ...

    ios的第三方框架的demo

    在iOS应用开发中,使用第三方框架能够极大地提升开发效率,减少重复工作,并提供丰富的功能。本教程将聚焦于“RESideMenu”这一第三方框架,它为iOS应用带来了类似Facebook、Instagram等应用的侧滑菜单效果。这个...

    webrtc-demo-2016年

    WebRTC(Web Real-Time Communication)是一项开放的技术标准,旨在实现浏览器之间的实时通信,无需借助插件或第三方软件。这个“webrtc-demo-2016年”是一个针对iOS平台的WebRTC示例项目,时间回溯到2016年,尽管...

    cocoaPods使用

    CocoaPods应运而生,它是一个强大的第三方库管理工具,专为OS X和iOS平台设计。通过CocoaPods,开发者可以方便地管理和集成第三方库,同时简化项目的构建过程。 ### 什么是CocoaPods CocoaPods是一个Ruby编写的...

    CocoaPods 安装与使用

    1. **下载原理**:当使用 CocoaPods 添加第三方库时,它会根据库的 Git 地址找到对应的仓库,并根据指定的版本号定位到具体的提交。如果没有指定版本号,则默认下载最新版本。接着,CocoaPods 会在提交中查找以 `....

    第三方框架ICarousel的demo

    在iOS应用开发中,开发者经常会使用到各种第三方框架来提高开发效率和实现复杂功能。ICarousel就是一个非常流行且强大的第三方框架,它为iOS提供了丰富的轮播视图效果,包括2D、3D以及自定义的过渡动画。在这个"第三...

    cocoapods-xcode-plugin插件

    8. **代码跳转**:通过插件,可以直接从代码中跳转到Pod库的源代码,便于调试和学习第三方库的工作原理。 总的来说,CocoaPods Xcode 插件极大地提高了CocoaPods的使用效率,为开发者节省了时间,提高了生产力。...

    cocoapods-xcode-plugin-master.zip插件

    CocoaPods是一款广泛使用的Objective-C和Swift项目依赖管理工具,它简化了第三方库的集成过程,使得开发者能够更高效地管理和更新项目中的外部库。`cocoapods-xcode-plugin-master.zip`插件则是针对Xcode的一个扩展...

    xcode 中 CoreData的第三方包的使用 项目源码

    通过研究此项目,开发者可以学习到如何在自己的项目中更有效地利用CoreData和第三方库。 总之,了解和掌握如何在Xcode中集成并使用CoreData的第三方库是提升iOS应用开发效率的重要技能。这不仅可以简化代码,还可以...

    IOS网络访问第三方框架AFNetworking

    AFNetworking是iOS开发中广泛使用的网络访问第三方框架,它为开发者提供了强大且灵活的网络请求功能,极大地简化了网络编程的复杂性。本框架由Alamofire Software Foundation维护,其核心理念是提供一套简单易用的...

    cocoapods-packager, CocoaPods插件,它允许你从podspec生成 static 库.zip

    cocoapods-packager, CocoaPods插件,它允许你从podspec生成 static 库 CocoaPods打包器 允许你从podspec中生成框架或者 static 库的CocoaPods插件。这个插件适用于那些只需要通过CocoaPods发布 pod,还可以为不使用...

    iOS-第三方1-富文本-动态标签-1ActiveLabel-basic

    在这个项目“iOS-第三方1-富文本-动态标签-1ActiveLabel-basic”中,我们关注的是一个名为ActiveLabel的第三方库,它是一个适用于iOS的Swift框架,专门用来处理动态标签,即可以响应点击或者其他交互的富文本标签。...

    高职竞赛移动互联网应用软件开发第三方插件

    总的来说,高职竞赛中的移动互联网应用软件开发第三方插件是一个广泛且深入的话题,涵盖了从基础的库和SDK到高级的框架和工具。理解并掌握这些插件的使用,是提升开发能力和竞争力的关键。在实际学习和竞赛过程中,...

    ios的第三方框架

    在iOS应用开发中,第三方框架扮演着至关重要的角色,它们为开发者提供了丰富的功能,提高了开发效率,降低了工作难度。本文将深入探讨“ios的第三方框架”中的SWCell,这是一个能够实现多单元格滑动效果的组件,适用...

    swift-让自己的库支持cocoaPods

    CocoaPods则是Objective-C和Swift开发者常用的一个依赖管理工具,能够帮助开发者轻松管理和集成第三方库。本篇文章将详细介绍如何让你的Swift库支持CocoaPods,以便其他开发者可以方便地在他们的项目中使用你的代码...

Global site tag (gtag.js) - Google Analytics