CocoaPods|安装流程与使用

系统环境:macOS Mojave 10.14.6

1. 安装 RVM

  • 开始安装
1 | curl -L get.rvm.io | bash -s stable
  • 进入目录
1 | source ~/.bashrc
2 | source ~/.bash_profile
  • 成功后查看版本
1 | rvm -v

2. Ruby升级

  • 获取Ruby版本
1 | ruby -v
  • 对比Ruby版本
1 | rvm list known
  • 更新Ruby
1 |rvm install 2.7.0-preview1

3. 更换Ruby源

  • 查看当前源
1 | gem sources -l
  • 移除默认源
1 | gem sources --remove https://ruby.taobao.org/
  • 替换源
1 | gem sources -a https://gems.ruby-china.com/

(尾巴这条斜杆需要斟酌移除)

4. 安装CocoaPods

  1. OS X 10.11之前系统的安装cocoapods 指令
1 | $ sudo gem install cocoapods
  1. OS X 10.11以后系统的安装cocoapods 指令
1 | $ sudo gem install -n /usr/local/bin cocoa pods
  • 安装
1 | pod setup
  • 完成之后
1 | pod --version //查看版本
  • 测试一下
1 | pod search AFNetworking

使用流程

1 | cd 目标路径
2 | pod init
  • 然后操作Podfile文件,一般使用vim
  # Uncomment the next line to define a global platform for your project
platform :ios, '8.0'

target 'ProjectName' do
  # Uncomment the next line if you're using Swift or would like to use dynamic frameworks
  # use_frameworks!

  pod 'AFNetworking'

end
  • 完成它
1 | pod install
  • 如若比较慢,可使用{🔽},无须更新本地库情况下(更新同理)
1 | pod install --no-repo-update

打开白色工程 projectName.xcworkspace

5. 更新CocoaPods

1 | sudo gem install -n /usr/local/bin cocoapods --pre

6. 更新CocoaPods 1.8.+版本本地库

  • 1.8+强制安装了新的源trunk,采用cdn替换了原本的master
  • 直接通过cdn方式更新本地库
iMac:mac$ pod install
    Analyzing dependencies
    Adding spec repo `trunk` with CDN `https://cdn.cocoapods.org/`
    Downloading dependencies
    Generating Pods project
    Integrating client project
    Pod installation complete! There are 28 dependencies from the Podfile and 32 total pods installed.

问题与解决

  1. RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54


    5632399-411ef4739da26721.png
  • 可使用如下命令解决:

git clone https://git.coding.net/CocoaPods/Specs.git ~/.cocoapods/repos/master

///因Coding停止维护,可切别的源~
* https://code.aliyun.com/Magi/CocoaPods.git   
* https://gitclub.cn/CocoaPods/Specs.git `推荐`
  1. 如果pod install中发现:
You have either:
 * out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
 * mistyped the name or version.
 * not added the source repo that hosts the Podspec to your Podfile.

Note: as of CocoaPods 1.0, `pod repo update` does not happen on `pod install` by default.
  • 可尝试直接更新最新版本
1 | sudo gem install cocoapods --pre

或者pod repo update or with pod install --repo-update

  • 如果还是不行,可移除缓存重新安装
// 移除本地master
sudo rm -fr ~/.cocoapods/repos/master
// 移除本地缓存
sudo rm -fr ~/Library/Caches/CocoaPods/
// 重新setup,如果很慢可使用问题1的解决方法(git clone)
pod setup --verbose
  1. 更新时,CocoaPods 1.8.0 的trunk问题

[!] CDN: trunk URL couldn't be downloaded: https://raw.githubusercontent.com/CocoaPods/Specs/master/Specs/ Response: 400

  • 可使用脱离trunk方式,打开podfile文件,顶部添加{🔽},指定旧方式下载
//source `源地址` podfile文件中指定source源为master:
source 'https://github.com/CocoaPods/Specs.git'
  • 可移除trunk
1 | pod repo remove trunk
  • podfile文件中添加source源后,pod install和pod update可以正常操作,但是pod search有些库却不正常。

解决办法:1. podfile文件中指定source源为master:source 'https://github.com/CocoaPods/Specs.git' 2.执行pod repo remove trunk移除trunk源 执行完后,pod search就都正常了! 。

  1. 更新系统与Xcode后,出现 Failed to extract git version from ·git --version· 🔽
macdeMacBook-Air:~ mac$ pod --version
Traceback (most recent call last):
    7: from /Users/mac/.rvm/rubies/ruby-2.7.0-preview1/bin/ruby_executable_hooks:24:in `<main>'
    6: from /Users/mac/.rvm/rubies/ruby-2.7.0-preview1/bin/ruby_executable_hooks:24:in `eval'
    5: from /Users/mac/.rvm/rubies/ruby-2.7.0-preview1/bin/pod:23:in `<main>'
    4: from /Users/mac/.rvm/rubies/ruby-2.7.0-preview1/bin/pod:23:in `load'
    3: from /Users/mac/.rvm/rubies/ruby-2.7.0-preview1/lib/ruby/gems/2.7.0/gems/cocoapods-1.8.4/bin/pod:55:in `<top (required)>'
    2: from /Users/mac/.rvm/rubies/ruby-2.7.0-preview1/lib/ruby/gems/2.7.0/gems/cocoapods-1.8.4/lib/cocoapods/command.rb:49:in `run'
    1: from /Users/mac/.rvm/rubies/ruby-2.7.0-preview1/lib/ruby/gems/2.7.0/gems/cocoapods-1.8.4/lib/cocoapods/command.rb:130:in `verify_minimum_git_version!'
/Users/mac/.rvm/rubies/ruby-2.7.0-preview1/lib/ruby/gems/2.7.0/gems/cocoapods-1.8.4/lib/cocoapods/command.rb:118:in `git_version': Failed to extract git version from `git --version` ("xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun\\n") (RuntimeError)

  • 解决方法
1 | xcode-select --install
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,192评论 6 511
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,858评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,517评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,148评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,162评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,905评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,537评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,439评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,956评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,083评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,218评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,899评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,565评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,093评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,201评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,539评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,215评论 2 358

推荐阅读更多精彩内容