最新版的 MacOS Catalina 的 CocoaPods 安装步骤 pod install/pod update 更新慢等问题

这篇具有很好参考价值的文章主要介绍了最新版的 MacOS Catalina 的 CocoaPods 安装步骤 pod install/pod update 更新慢等问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

CocoaPods的简介

当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。如果使 用他们,传统的方法是,在git上把他们下载下来,然后去配置。这个工作很繁琐,而且也容易出错。不 过有了Cocoapods你就会从这些繁琐的工作中解脱出来。

CocoaPods的安装及使用

第一步:安装RVM

RVM: Ruby Version Manager.中文为Ruby版本管理器,包括Ruby的版本管理和Gem库管理。


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

    //需要等一会

    $ source ~/.bashrc

    $ source ~/.bash_profile

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

rvm -v

如图所示:

cocoapods最新版本,macos,cocoapods,ruby

如上图所示,能显示版本号,即是安装成功了。

如果受到防火墙的影响,出现
kinglyimac@192 ~ % curl -L get.rvm.io | bash -s stable % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 194 100 194 0 0 289 0 --:--:-- --:--:-- --:--:-- 289 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused

可以 在mac环境下安装离线安装rvm

第二步:升级Ruby的版本

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

  • 查看当前ruby版本
ruby -v
  • 获取rvm列表,列表里会显示最新版Ruby版本
rvm list known

如下图所示:

cocoapods最新版本,macos,cocoapods,ruby

  • 选择安装最新版Ruby

根据rvm列表里# MRI Rubies一栏里显示的的Ruby版本号,比如要安装最新的2.4.1版本,命令如下:

rvm install 2.4.1

安装的过程中,可能出现的问题,如下所示:

Error running ‘__rvm_make -j 1’,showing last 15 lines of /Users/GDarkness/.rvm/log/1474100434_ruby-2.4.1/make.log

安装xcode command line 即可解决

命令如下:

xcode-select --install

此时会弹出一个软件安装信息 ,点击安装 ,安装结束后,

继续在终端输入:

rvm install 2.4.1

安装即可完成ruby的安装

使用 ruby -v 命令,出现如下所示,

kinglydeMacBook-Pro:~ kingly$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-darwin16]
kinglydeMacBook-Pro:~ kingly$ 

安装成功。

第三步:升级RubyGems版本和更改gem源

升级RubyGems版本

sudo gem update --system

使用 gem -v 查看一下gem版本,要2.6以上才可以

kinglydeMacBook-Pro:~ kingly$ gem -v
2.6.14
kinglydeMacBook-Pro:~ kingly$ 

更改gem源,先看一下当前的gem源

gem sources -l

淘宝的gem源已经不维护了,现在是官方论坛在维护,地址https://gems.ruby-china.com/

添加最新gem源,使用命令

gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/

kinglydeMacBook-Pro:~ kingly$ gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
source https://gems.ruby-china.org/ already present in the cache
source https://rubygems.org/ not present in cache
kinglydeMacBook-Pro:~ kingly$ 

使用 gem sources -l ,查看是否添加成功

kinglydeMacBook-Pro:~ kingly$ gem sources -l
*** CURRENT SOURCES ***

https://gems.ruby-china.com/
kinglydeMacBook-Pro:~ kingly$

确保最新的源只有一个。
有关 最新 RubyGems 镜像- Ruby China ,请见 https://gems.ruby-china.com/

添加成功。

第四步:安装CocoaPods

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

初始化

pod setup

可能下载需要很久,根据网速的快慢而定,因为下载镜像索引大概有1个多G的大小,如果比较慢的话,建议使用VPN。

Setting up CocoaPods master repo
  $ /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress
  Cloning into 'master'...
  remote: Counting objects: 1113358, done.        
  remote: Compressing objects: 100% (255/255), done.        
  remote: Total 1113358 (delta 87), reused 1 (delta 1), pack-reused 1113090        
  Receiving objects: 100% (1113358/1113358), 381.32 MiB | 349.00 KiB/s, done.
  Resolving deltas: 100% (520388/520388), done.
  Checking out files: 100% (140115/140115), done.
Setup completed

出现如上所示,恭喜你,CocoaPods已经安装并下载镜像索引成功了。

我们还可以验证一下,是否安装成功。

pod search 第三方 ,例如:执行 $pod search KYBarrageKit 

出现如下所示,即表明您安装成功了,请愉快的玩Cocoapods了!

kinglydeMacBook-Pro:~ kingly$ pod search KYBarrageKit

-> KYBarrageKit (1.0.2)
   KYBarrageKit this is a high availability, easy to use barrage Framework
   Library.
   pod 'KYBarrageKit', '~> 1.0.2'
   - Homepage: https://github.com/kingly09/KYBarrageKit
   - Source:   https://github.com/kingly09/KYBarrageKit.git
   - Versions: 1.0.2, 1.0.1, 0.0.9, 0.0.7, 0.0.6, 0.0.5, 0.0.4, 0.0.3, 0.0.2,
   0.0.1 [master repo]
(END)

安装OK啦!

注意:最新版的MacOS Catalina系统命令行执行pod setup命令直接结束啦;
莫着急,我们手动安装本地库,速度绝对快

如何使用CocoaPods?

好了,安装好CocoPods之后,接下来就是使用它。所幸,使用CocoPods和安装它一样简单,也是通过一两行命令就可以搞定。

在这里用两种使用场景来具体说明如何使用CocoaPods。

利用CocoaPods,在项目中导入YYKit类库

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

pod search YYKit

出现如下:

-> YYKit (1.0.9)
   A collection of iOS components.
   pod 'YYKit', '~> 1.0.9'
   - Homepage: https://github.com/ibireme/YYKit
   - Source:   https://github.com/ibireme/YYKit.git
   - Versions: 1.0.9, 1.0.8, 1.0.7, 1.0.6, 1.0.5, 1.0.4, 1.0.3, 1.0.2, 1.0.1,
   1.0, 0.9.12, 0.9.11, 0.9.10, 0.9.9, 0.9.8, 0.9.7, 0.9.6, 0.9.5, 0.9.4, 0.9.3,
   0.9.2, 0.9.1, 0.9.0, 0.2.0 [master repo]
   - Subspecs:
     - YYKit/no-arc (1.0.9)

-> YYKit-fork (1.0.9.3)

这说明,YYKit是支持CocoaPods,所以我们可以利用CocoaPods将YYKit导入你的项目中。

生成一个Podfile文件,每个项目只需要一个Podfile文件。

在终端切换到项目目录:

kinglydeMacBook-Pro:~ kingly$ cd /Users/kingly/Documents/项目/app/BCWebBrowser/WKWebViewOC 
kinglydeMacBook-Pro:WKWebViewOC kingly$ ls
WKWebViewOC		WKWebViewOCTests
WKWebViewOC.xcodeproj	WKWebViewOCUITests
kinglydeMacBook-Pro:WKWebViewOC kingly$ ls -l
total 0
drwxr-xr-x@ 12 kingly  staff  408 11  1 15:47 WKWebViewOC
drwxr-xr-x   5 kingly  staff  170 11  2 09:20 WKWebViewOC.xcodeproj
drwxr-xr-x@  4 kingly  staff  136  4 11  2017 WKWebViewOCTests
drwxr-xr-x@  4 kingly  staff  136 10 31 09:27 WKWebViewOCUITests
kinglydeMacBook-Pro:WKWebViewOC kingly$ 

使用如下命令创建一个Podfile文件

 pod init

如下创建成功

kinglydeMacBook-Pro:WKWebViewOC kingly$ pod init
kinglydeMacBook-Pro:WKWebViewOC kingly$ ls -l
total 8
-rw-r--r--   1 kingly  staff  438 11  2 13:04 Podfile
drwxr-xr-x@ 12 kingly  staff  408 11  1 15:47 WKWebViewOC
drwxr-xr-x   5 kingly  staff  170 11  2 09:20 WKWebViewOC.xcodeproj
drwxr-xr-x@  4 kingly  staff  136  4 11  2017 WKWebViewOCTests
drwxr-xr-x@  4 kingly  staff  136 10 31 09:27 WKWebViewOCUITests
kinglydeMacBook-Pro:WKWebViewOC kingly$ 

这时候,你会发现你的项目目录中,出现一个名字为Podfile的文件,注意,Podfile文件应该和你的工程文件.xcodeproj在同一个目录下。

修改Podfile文件

vi  Podfile

修改如下 :

# Uncomment the next line to define a global platform for your project
platform :ios, '8.0'

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

  # Pods for WKWebViewOC
  
  inhibit_all_warnings!
  pod 'YYKit', '~> 1.0.9'


  target 'WKWebViewOCTests' do
    inherit! :search_paths
    # Pods for testing
  end

  target 'WKWebViewOCUITests' do
    inherit! :search_paths
    # Pods for testing
  end

end

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

:wq!

这时候,你就可以利用CocoPods下载YYKit类库了。

下载 YYKit类库

还是在终端中的当前项目目录下,运行以下命令:

pod install

因为是在你的项目中导入YYKit,这就是为什么这个命令需要你进入你的项目所在目录中运行。

运行上述命令之后,终端出现以下信息:

Integrating client project

[!] Please close any current Xcode sessions and use `WKWebViewOC.xcworkspace` for this project from now on.

Integrating target `Pods-WKWebViewOC` (`WKWebViewOC.xcodeproj` project)
  Adding Build Phase '[CP] Embed Pods Frameworks' to project.
  Adding Build Phase '[CP] Copy Pods Resources' to project.
  Adding Build Phase '[CP] Check Pods Manifest.lock' to project.

Integrating target `Pods-WKWebViewOCTests` (`WKWebViewOC.xcodeproj` project)
  Adding Build Phase '[CP] Embed Pods Frameworks' to project.
  Adding Build Phase '[CP] Copy Pods Resources' to project.
  Adding Build Phase '[CP] Check Pods Manifest.lock' to project.

Integrating target `Pods-WKWebViewOCUITests` (`WKWebViewOC.xcodeproj` project)
  Adding Build Phase '[CP] Embed Pods Frameworks' to project.
  Adding Build Phase '[CP] Copy Pods Resources' to project.
  Adding Build Phase '[CP] Check Pods Manifest.lock' to project.
  - Running post install hooks
    - cocoapods-stats from
    `/Users/kingly/.rvm/gems/ruby-2.4.1@global/gems/cocoapods-stats-1.0.0/lib/cocoapods_plugin.rb`

Sending stats
      - YYKit, 1.0.9

-> Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.
kinglydeMacBook-Pro:WKWebViewOC kingly$ 

出现上述信息,证明下载导入YYKit类库成功了。

这个过程如果比较慢,也许需要十几秒,取决于你的网络状况。

使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动

原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:

pod install --verbose --no-repo-update
pod update --verbose --no-repo-update
或者
pod install --no-repo-update
pod update --no-repo-update

注意最后一句话,意思是:以后打开项目就用 WKWebViewOC.xcworkspace 打开,而不是之前的.xcodeproj文件。

你也许会郁闷,为什么会出现.xcodeproj文件呢。这正是你刚刚运行$ pod install命令产生的新文件。除了这个文件,你会发现还多了另外一个文件“Podfile.lock”和一个文件夹“Pods”。

打开项目

点击 WKWebViewOC.xcworkspace 打开之后工程之后,项目Xcode目录结构如下图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BOC3SXbz-1679559908722)(https://static.oschina.net/uploads/img/201711/02134138_l4XI.png “”)]

你会惊喜地发现,YYKit已经成功导入项目了。

现在,你就可以开始使用YYKit类库啦。

在你的项目需要使用的地方中输入:

#import <YYKit/YYKit.h>

即可。

如果发现如下所示的问题,编译报file not found错误

cocoapods最新版本,macos,cocoapods,ruby

解决:
Project->Info->Configurations中,在Configurations里面吧Debug 和Release的Tests 的None改为pods,clean一下,即可。

cocoapods最新版本,macos,cocoapods,ruby

更多

The Markdown Preference Pane

详细请见 官方介绍:https://guides.cocoapods.org/

最新版的MacOS Catalina系统命令行执行pod setup命令直接结束啦;
莫着急,我们手动安装本地库,速度绝对快

命令行执行以下操作

git clone https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/trunk --depth 1

git clone https://github.com/CocoaPods/Specs.git master --depth 1

git clone --depth=1  https://github.com/CocoaPods/Specs.git master

git clone git://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/trunk

CDN: trunk URL couldn’t be downloaded: https://raw.githubusercontent.com/CocoaPods/Specs/master/Specs/f/e/9/CocoaMQTT/1.0.0/CocoaMQTT.podspec.json

由于项目是用CocoaPods管理,CocoaPods 1.8以后将CDN切换为默认的spec repo源,并附带一些增强功能!CDN支持最初是在1.7版本中引入的,最终在1.7.2中完成。 它旨在大大加快初始设置和依赖性分析。

按照官方文档 podfile文件中添加source源:
source ‘https://github.com/CocoaPods/Specs.git’
podfile文件中添加source源后,pod install和pod update可以正常操作,但是pod search有些库却不正常

解决办法:

  1. podfile文件中指定source源为master:

source ‘https://github.com/CocoaPods/Specs.git’文章来源地址https://www.toymoban.com/news/detail-584379.html

2.执行pod repo remove trunk移除trunk源

执行完后,pod search就都正常了!

kinglydeMacBook-Pro:repos kingly$ pod repo list

master
- Type: git (master)
- URL:  https://github.com/CocoaPods/Specs.git
- Path: /Users/kingly/.cocoapods/repos/master

1 repo
kinglydeMacBook-Pro:repos kingly$ 

注意:podfile文件中一定要指定master源,因为现在默认是trunk源

source ‘https://github.com/CocoaPods/Specs.git’

到了这里,关于最新版的 MacOS Catalina 的 CocoaPods 安装步骤 pod install/pod update 更新慢等问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • VS2022配置QT6.4.3的详细步骤(2023年最新版安装教程)

         本文包含了 QT在线安装器的安装过程,QT的安装过程,QT的环境配置,VS的环境配置 QT在线安装器的百度云资源 希望可以帮助大家解决安装过程中出现的各种问题。         前些天,听完了C++的基础课程想下载个QT学一下前端操作,但是在安装的时候却出现了一些问题,

    2023年04月26日
    浏览(59)
  • macOS Sonoma 14 Beta3官方最新版VMware虚拟机安装全套图文教程(两种不同的安装流程图,极限傻瓜流程)

    如今macOS最新的Sonoma 14版本已更新至Beta3。总的来说在VMware虚拟机中的安装流程都差不多,需要注意的是由于网络的问题,可分为有网安装和无网络模式安装。不同模式的安装流程稍微有点区别,如果你真的不会安装,这篇傻瓜版的流程一定是你的不二之选。之前我也发表过关

    2024年02月13日
    浏览(46)
  • 最新版MacOS系统删除自带输入法ABC的方法

    Mac系统安装搜狗输入法以后,无法完全删除自带的输入法,以至于切换页面时输入法自动跳转成自带ABC,每次都需要手动切换,很是麻烦。现在演示最新版的MacOS删除自带输入法ABC的方式,使电脑只保留一个搜狗输入法,从而达到锁定输入法的方式。 操作系统:MacOS Ventura 1

    2024年02月06日
    浏览(114)
  • 最新版 Let’s Encrypt免费证书申请步骤,保姆级教程

    最近将域名迁到了google domain,就研究了一下Let’s Encrypt的域名证书配置。发现网上找到的教程在官方说明中已经废弃,所以自己写一个流程记录一下。 步骤方法官方文档见:https://eff-certbot.readthedocs.io/en/stable/install.html#installation snapd官方文档见:https://certbot.eff.org/instructions

    2024年02月07日
    浏览(46)
  • 如何在macOS上使用最新版的Bison来构建项目,而不是Xcode工具链内嵌的2.3版本

    在很多项目的编译中需要使用 Bison,而且版本需要至少为 3.0,不然会出现以下错误。 这时候你可能使用 brew install bison 安装了最新版的 Bison,但是还是会有这个问题。 解决这个问题有两种方案: 让手动安装版本在环境变量 PATH 的位置在 Xcode 安装的版本前面; 手动指定一下

    2024年02月09日
    浏览(50)
  • Linux Centos7 升级最新版OpenSSH-9.6p1详细步骤(附脚本)

            最近公司系统在进行三级等保测评,其中有一项高危漏洞是Linux服务器的SSH版本太低存在安全风险,要求整改升级到最新版本,此篇文章记录SSH升级步骤和脚本。 鸣谢:本文参考文章,在该作者文章的所提供的脚本基础上进行修改而来:Linux OpenSSH-9.0p1最新版升级

    2024年02月03日
    浏览(55)
  • 2023 最新版IntelliJ IDEA 2023.1创建Java Web 项目详细步骤(图文详解)

    如果需要学习使用spring-boot3搭建Java Web项目,请移步:2023 最新版IntelliJ IDEA 2023.1创建Java Web前(vue3)后端(spring-boot3)分离 项目详细步骤(图文详解) 安装什么的这里就不说了,都是傻瓜式的安装,但是你需要知道安装的位置,切记!切记! 使用版本:java 20.0.1 2023-04-18 官

    2024年02月05日
    浏览(122)
  • composer最新版本安装

    安装前请务必确保已经正确安装了 PHP。打开命令行窗口并执行  php -v  查看是否正确输出版本号。 打开命令行并依次执行下列命令安装最新版本的 Composer: 复制 复制 复制 执行第一条命令下载下来的  composer-setup.php  脚本将简单地检测  php.ini  中的参数设置,如果某些参

    2024年02月13日
    浏览(49)
  • 快速安装最新版Docker

    安装docker 列出系统中以安装的docker包: 卸载以安装的docker包 如果系统中没有docker,则直接进行下一步 安装docker所需依赖:  添加docker的yum源: yum安装docker: 验证docker版本以确认安装成功: 如图所示,docker安装成功 启动docker 执行以下命令启动docker: 然后将docker设置为开机

    2024年02月12日
    浏览(51)
  • Ubuntu 安装最新版python

    要在Ubuntu上安装最新版本的Python,你可以按照以下步骤进行: 首先,打开终端并更新包列表: 然后,你需要安装一些依赖的软件包来构建Python源码。可以使用下面的命令来安装这些依赖: 接下来,从Python官方网站下载最新版本的源代码。你可以从这个链接 https://www.python.o

    2024年02月13日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包