最新的 cocoapods 安装与使用(2019.04)
cocoapods简介:
cocoapods 是iOS的类库管理工具,可以让开发者很方便集成各种第三方库,而不用去网站上一个个下载,再一个个文件夹的拖进项目中,还得添加相关的系统依赖库。只需要安装好cocoapods,然后编写好Podfile,最好在终端输入一行命令,就可以简单的做到第三方库的添加、升级、删除,大大的节省我们的开发时间。
cocoapods安装:
首先我们需要安装Ruby环境,这里就不过多介绍,一般都是安装了的。
然后就是打开终端,输入
$ gem sources -l
检查Ruby源(天朝你懂得),如果你的镜像地址是
*** CURRENT SOURCES ***
https://rubygems.org/ 那么我们就需要替换这个镜像源,首先删除这个$ gem sources --remove https://rubygems.org/ 运行完这行命令,继续$ gem sources -a https://ruby.taobao.org/(OS 10.11以前是$ gem sources -a http://ruby.taobao.org/)
不过现在有说法淘宝镜像没有继续维护(传送门)这个,我也不知道真假,所以这边还有一个镜像源
$ gem sources -ahttps://gems.ruby-china.com/
(注:请尽可能用比较新的 RubyGems 版本,建议 2.6.x 以上。
$ gem update --system # 这里请翻墙一下,如果不行下面也就有链接,下载安装包安装
$ gem -v )
运行完了,你可以运行 $ gem sources -l 看下是否替换成功。
*** CURRENT SOURCES ***
https://gems.ruby-china.org
或则
*** CURRENT SOURCES ***
https://ruby.taobao.org/
到这里就算已经成功配置完环境了,下一步就是安装了。继续在终端输入命令:
$ sudo gem install -n /usr/local/bin cocoapods
(OS 10.11以前是 $ sudo gem install cocoapods)
等执行完,继续:
$ pod setup
到这里,就算安装成功了;你可以输入
$ pod --version
进行验证cocoapods版本,你也可以更新gem,这个就不多说,自己看链接。
cocoapods使用:
首先,我们得在终端里面cd到项目文件夹里面
$ cd 项目文件夹路径 (可以直接把拖动项目文件夹到终端光标处,系统自动生成路径)
然后创建Podfile 文件
$ touch Podfile
再编辑Podfile文件:(Podfile语法参考)
$ vim Podfile (终端vim文件 按 i 可编辑 ,esc 退出编辑,:wq 可保存退出,:q 不保存退出)
platform :ios, '8.0' #用来设置所有第三方库所支持的iOS最低版本
pod 'AFNetworking','~>2.6' #设置框架的名称和版本号
cocopods版本是1.0.0以上的:
platform :ios, '8.0'
use_frameworks! #(swift要用到这一句) target 'MyApp' do #MyApp 就是你的项目名
pod 'AFNetworking', '~> 2.6'
end
(版本号的规则:
'>1.0' 可以安装任何高于1.0的版本
'>=1.0' 可以安装任何高于或等于1.0的版本
'<1.0' 任何低于1.0的版本
'<=1.0' 任何低于或等于1.0的版本
'~>0.1' 任何高于或等于0.1的版本,但是不包含高于1.0的版本
'~>0' 任何版本,相当于不指定版本,默认采用最新版本号)
写好了 :wq 保存退出vim,输入
$ pod install
等命令运行完,项目就已经是添加了cocoapods管理,启动项目就是点击.xcworkspace后缀的文件,在项目中,导入头文件就能调用第三方库了。以后需要添加、更新、删除某个第三方库,只要编写好Podfile文件,在终端输入:
$ pod update 运行完就可以了。
PS:常用的命令 1.清理缓存(或则是本地仓库,不知道这个说法对不对)
$ sudo rm -fr ~/Library/Caches/CocoaPods/
$ sudo rm -fr ~/.cocoapods/repos/master/
2.Setting up CocoaPods master repo 卡住(查看master下载情况)
$ cd ~/.cocoapods
$ du -sh * (大小894M左右,记录时间:2016.11.7--cocoapods版本1.1.1);
3. 卸载重装cocoapods4.升级ruby遇到的错误(传送门)
4.1 ERROR: While executing gem ... (TypeError)
no implicit conversion of nil into String
4.2
Setting up CocoaPods master repo
[!] /usr/local/bin/Git clone https://github.com/CocoaPods/Specs.git master
Cloning into 'master'...
error: RPC failed; curl 56 SSLRead() return error -36
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
最新的 cocoapods 安装与使用(2019.04)的更多相关文章
- 最新的 cocoaPods 安装方法
经过努力终于发现了最新的 解决cocoaPods安装的办法: taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务 第一步:安装rvm, 不管需不需要升级ruby,rvm可以 ...
- 最新的 cocoapods 安装与使用(2016.11)
cocoapods简介: cocoapods 是iOS的类库管理工具,可以让开发者很方便集成各种第三方库,而不用去网站上一个个下载,再一个个文件夹的拖进项目中,还得添加相关的系统依赖库.只需要安装好c ...
- 2017 最新的 cocoaPods 安装方法
经过努力终于发现了最新的 解决cocoaPods安装的办法: taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务 第一步:安装rvm, 不管需不需要升级ruby,rvm可以 ...
- 最新的CocoaPods 安装及使用
当在开发iOS应用时,会经常使用到很多的第三方开源类库,一般的方法是直接从GitHub下载,然后拖到项目中使用,如果该开源类库不依赖其他的类库,就可以直接使用:如果该开源类库还依赖一些其他的类库,则需 ...
- Ruby升级的最新方法/CocoaPods安装
今天安装cocoapods时候出现了下面的提示 Error installing pods:active support requires Ruby version >= 2.2.0//这个需求 ...
- 2016最新cocoapods安装流程,安装过程中遇到的问题及解决方法
现在的cocoapods与之前比较.有很多不一样的地方.自己试了一试,终于搞定.现在大概纪录一下. 1.首先查看ruby是否是最新版的. ruby是通过rvm安装的所以需要先安装rvm后查看ruby是 ...
- 2016最新CocoaPods安装和错误解决 + 自己的经验
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 20.0px Times; color: #333333; background-color: #fffff ...
- 最新cocoapods安装流程,安装过程中遇到的问题及解决方法
最近重新安装了一次cocoapods,参考的安装流程:http://blog.csdn.net/showhilllee/article/details/38398119/ 但是现在的cocoapods ...
- 2016最新CocoaPods安装与使用
前言 是不是已经厌烦了将各种库拖拽到Xcode项目中?那么,CocoaPods的出现就帮你解决了这一问题.CocoaPods是Objective-C项目中最有名的类库管理工具,可以解决库与库之间的依赖 ...
随机推荐
- image management in kubernet
Image How can I edit an existing docker image metadata? docker-copyedit Registry Disk kubevirtis a g ...
- 【用户权限】MongoDB用户权限
一.数据库用户角色: read:允许用户读取指定数据库readWrite:允许用户读写指定数据库 二.数据库管理角色:dbAdmin.dbOwner.userAdmin: dbAdmin:允许用户在指 ...
- Ubuntu 14.04 安装 sysrepo v0.7.5
参考: Tentative gNMI support with sysrepo protobuf-c/protobuf-c Ubuntu 14.04 安装 sysrepo v0.7.5 安装依赖: s ...
- iOS QQ 扫一扫 捷径URL
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...
- 【搬运工】mysql用户权限设置
关于mysql的用户管理,笔记 1.创建新用户 通过root用户登录之后创建 >> grant all privileges on *.* to testuser@localhost id ...
- Unity自定义定时器,模拟协程,脱离MonoBehavior控制
using System; using System.Collections.Generic; using System.Timers; public class PETimer { private ...
- Linux系统安装笔记
1.下载CentOS系统镜像: 很多资料都是CentOS6的,7的比较少,所以我决定还是用CentOS6来学习. 地址:http://vault.centos.org/6.8/isos/x86_64/ ...
- 简单理解epel源
EPEL源-是什么全称 EPEL源 EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适 ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 创建复杂工具栏
jQuery EasyUI 数据网格 - 创建复杂工具栏 数据网格(datagrid)的工具栏(toolbar)可以包含按钮及其他组件. 您可以通个一个已存在的 DIV 标签来简单地定义工具栏布局,该 ...
- 关于requestAnimationFrame与setInterval的一点差异
requestAnimationFrame与setInterval都可以实现循环触发事件,但是setInterval是基于时间的,而requestAnimationFrame是基于帧数的,在我的一次开 ...