当前位置: 首页 > 编程笔记 >

详解2016 cocoapods的安装和使用以及版本升级遇到的问题

宋鸿
2023-03-14
本文向大家介绍详解2016 cocoapods的安装和使用以及版本升级遇到的问题,包括了详解2016 cocoapods的安装和使用以及版本升级遇到的问题的使用技巧和注意事项,需要的朋友参考一下

一.CocoaPods是什么?

CocoaPods是一个负责管理iOS项目中第三方开源库的工具。CocoaPods的项目源码在Github上管理。该项目开始于2011年8月12日,在这两年多的时间里,它持续保持活跃更新。开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和更新第三方开源库的时间,在iOS开发中经常会用到第三方库如AFNetworking,ASIHttpRequest等,在使用第三方库时,你除了要导数源码外,但是,集成这些依赖库需要我们手动去配置,还有当这些第三方库发生了更新,还需要手动去更新项目。这就显得非常麻烦。有麻烦自然有解决办法,CocoaPods就是为了解决这个问题而生的。通过CocoaPods,我们可以将第三方的依赖库统一管理起来,配置和更新只需要通过简单的几行命令即可完成。

二.CocoaPods的下载及安装

mac系统已经默认安装好Ruby环境,如果你不确定自己系统中是否有Ruby的,可以在终端中输入命令行:ruby -v查看当前ruby版本。如图:

确定以后,接下来就可以下载和安装CocoaPods,只需要一行命令。在Terminator(也就是终端)中输入以下命令:

sudo gem install cocoapods

但是,在终端中敲入这个命令之后,会发现半天没有任何反应。原因是那堵墙阻挡了cocoapods.org。

解决办法是,我们可以用阿里云的Ruby镜像来访问cocoapods。按照下面的顺序在终端中敲入依次敲入命令:

首先,检查你的ruby源:

$gem sources -l

默认情况下,终端应该返回如下信息:

*** CURRENT SOURCES ***

https://rubygems.org/

当然这个源在墙内是访问不到的。因此我们需要寻找一个可以在国内访问到的镜像。目前笔者找到的是http://rubygems-china.oss.aliyuncs.com这个阿里云的镜像,当然随着时间的推移,未来这个镜像也有可能无法访问了,到时候就只能重新寻找了。

确认镜像可用后,现在就要开始修改ruby源了。首先执行以下命令删除原来的ruby源:

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

执行命令后可在终端看见以下信息:

https://rubygems.org/ removed from sources

然后下一步添加你找到的可用的镜像源:

$gem sources -a http://rubygems-china.oss.aliyuncs.com

此时如果你再执行gem sources -l命令,就能看到当前镜像源里只有阿里云这一个了。此时你就可以重新执行这一段开头的那句命令了:

$sudo gem install cocoapods

如果一切正常,你应该能看到一段安装进度,以及最后有一条信息:

3 gems installed

确认看见这条信息,后先判断的CocoaPods是否可以使用,可以用CocoaPods的搜索功能验证一下。在终端中输入:

 pod search AFNetworking;

执行后可能会一直停在

Setting up CocoaPods master repo然后(很久)会出现如下错误:

解决办法是:

这说明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

说明Cocoapods在将它的信息下载到 ~/.cocoapods里;

cd  到该目录里,用du -sh *命令来查看文件大小,结果显示0 repos,说明没有安装成功;

在终端输入:

cd ~/.cocoapods

进入cocoapods文件后在终端输入:

du -sh *

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

这样总算安装好了。接下来再一次输入:

pod search AFNetworking

输入过后它可能会报:

[!] Unable to find a pod with name, author, summary, or descriptionmatching `AFNetworking`

解决方案是:

输入:

rm ~/Library/Caches/CocoaPods/search_index.json

后在一次输入:pod search AFNetworking

就可以咯。

三,cocoapods的使用

首先来到你的项目文件:

cd 项目文件的位置

然后,添加一个Podfile文件: vim Podfile

然后按i进入插入模式,进行编辑,在文件中输入以下内容:

注意百度上很多旧版本输入的类容:

platform :ios, '8.1'

pod 'AFNetworking', '~> 2.0'

它会报:[!] The dependency `AFNetworking (~> 3.0)` is not used in any concrete target.

现在版本升级官方给的文档是:

platform :ios, '8.0'

target '你的项目名称' do

pod 'AFNetworking', '~> 3.0'

end

注意:'你的项目名称'是你项目文件中'xx.xcodeproj'文件,'xx.xcodeproj'去掉后缀名所得的‘xx'==(就是)‘你的项目名称'

输入完成后按ESC退出编辑模式,最后输入:wq保存并退出文件。此时可以发现在项目目录下多了一个Podfile的文件,请注意这个文件必须与.xcodeproj在同一目录下。

最后:

pod install

没报错就可以了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍2016 cocoapods的安装和使用方法以及版本升级遇到的问题,包括了2016 cocoapods的安装和使用方法以及版本升级遇到的问题的使用技巧和注意事项,需要的朋友参考一下 一.CocoaPods是什么?   CocoaPods是一个负责管理iOS项目中第三方开源库的工具。CocoaPods的项目源码在Github上管理。该项目开始于2011年8月12日,在这两年多的时间里,

  • 本文向大家介绍mysql8.0.20下载安装及遇到的问题(图文详解),包括了mysql8.0.20下载安装及遇到的问题(图文详解)的使用技巧和注意事项,需要的朋友参考一下 1、浏览器搜索mysql下载安装 地址:https://dev.mysql.com/downloads/mysql/ 2、登录或者不登录下载 3、下载的是一个压缩包,直接解压缩,无需安装 4、新建my.ini文件,内容如下 关于

  • 本文向大家介绍详解DBeaver连接MySQL8以上版本以及解决可能遇到的问题,包括了详解DBeaver连接MySQL8以上版本以及解决可能遇到的问题的使用技巧和注意事项,需要的朋友参考一下 数据库MySQL版本8.0.18 下载一个DBeaver.exe 下载地址:https://dbeaver.io/download/ 点击新建 --》数据库连接 --》下一步                 

  • 本文向大家介绍eclipse+jdk安装以及会遇到的问题及解决方法,包括了eclipse+jdk安装以及会遇到的问题及解决方法的使用技巧和注意事项,需要的朋友参考一下 今天电脑系统崩了,重做了系统,对于我这个非计算机专业的来说,记录一下问win10系统安装eclipse软件和JDK以及配置环境变量时遇到的问题也是好的,希望也可以帮助到刚入行的你。 jdk下载地址: 链接: https://pan.

  • 本文向大家介绍详解Python安装tesserocr遇到的各种问题及解决办法,包括了详解Python安装tesserocr遇到的各种问题及解决办法的使用技巧和注意事项,需要的朋友参考一下 Tesseract的安装及配置 在Python爬虫过程中,难免遇到各种各样的验证码问题,最简单的就是​这种验证码了,那么在遇到验证码的时候该怎么办呢?我们就需要OCR技术了,OCR-即Optical Charac

  • 本文向大家介绍struts升级到2.5.2遇到的问题及解决方案(推荐),包括了struts升级到2.5.2遇到的问题及解决方案(推荐)的使用技巧和注意事项,需要的朋友参考一下 原来的版本是2.3.x,由于安全原因需要升级到2.5.2。 1,2.5.2版本不再提供xwork.jar ,整合到了 struts-core包中。 2,方法不能访问的问题,需要在每个action配置文件中加上 strict-