美文网首页
CocoaPods安装和使用

CocoaPods安装和使用

作者: GatesLand | 来源:发表于2020-05-27 09:53 被阅读0次

*CocoaPods安装

1. 替换ruby源

1.1 CocoaPods是基于ruby ecosystem的,需要ruby环境,使用ruby的gem命令。所以我们的系统要有ruby环境。然而Mac系统默认会安装好ruby环境。可在终端 ruby -v 查看ruby版本:输出如下图

ruby版本
1.2 查看ruby源, 终端输入 gem sources -l,显示如下:(现在镜像使用了https了,截图有点老,下面有改正) ruby源

如果你执行后,输出为:

*** CURRENT SOURCES ***

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

那么你需要更换到ruby-china的镜像,因为https://gems.ruby-china.org/这个源在墙内是访问不到的。所以你需要先移除这个镜像,然后添加 ruby-china的镜像,(我这里显示的是源为https://gems.ruby-china.org/,所以下面就以这个源为例,删除和添加新的源。如果你的源已经是https://gems.ruby-china.com,就不需要换了。如果不是请安下面的步骤删除和添加新源)步骤如下。

1>.移除掉原有的源

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

2>.淘宝的源已经不更新维护了,现在使用ruby-china的源哦

    gem source -a https://gems.ruby-china.com

3>.验证是否替换成功,如果显示上面截图的输出就说明正确:

 gem sources -l

注意:如果gem sources -l 后有多个源,只使用ruby-china这一个源就行了,其他的删掉

2. 更新升级 Gem 版本

  1. 更新升级gem,gem不更新可能导致安装pod失败

    sudo gem update --system
    
  2. 查看gem版本

    gem -v
    

输出如下:

gem版本

3. 安装CocoaPods

  1. 如果mac系统为OS X 10.11 以前安装命令为:

        sudo gem install cocoapods    // 安装cocoapods
    

    Mac系统为OS X EL Capitan安装命令为:

    sudo gem install -n /usr/local/bin cocoapods
    
  2. 等待其安装成功,用命令pod --version查看是否安装成功,如果成功会显示pod的版本。


    pod版本

如果你本地有多个xcode版本,安装时需要你指定下安装路径,不然会报错。报错信息如下:

 [!] /usr/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 时使用 sudo xcode-select -switch 路径。比如:

  1. 打印当前xcode的路径
   xcode-select --print-path

输出:

/Applications/Xcode.app/Contents/Developer
  1. 然后在执行下面的安装命令:
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

如果你xcode的名称改了例如:这时你要这样找到xcode的路径

xcode应用名称

先在终端输入”sudo xcode-select -switch “,然后,打开Xcode—>右键显示包内容,找到Developer文件夹拖到终端里面
这时安装命令行如下:

sudo xcode-select -switch /Applications/Xcode 7.3.1.app/Contents/Developer

小知识:如果想安装指定版本,使用如下

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

安装最新的release beta版本

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

如果你想卸载CocoaPods怎么办?看下面:(具体卸载流程,可以自己百度下,下面只供参考)

 //卸载CocoaPods
sudo gem uninstall cocoapods

4. 更新Podspec索引文件

安装成功后 执行pod setup:

pod setup

pod setup作用

将所有第三方的Podspec索引文件更新到本地的~/.cocoapods/repos目录下。所有的第三方开源库的Podspec文件都托管在https://github.com/CocoaPods/Specs,我们需要把这个Podspec文件保存到本地,这样才能让我们使用命令pod search 开源库搜索一个开源库,怎样才能把github上的Podspec文件保存本地呢?那就是 pod setup
执行pod setup时,CocoaPods 会将第三方的podspec索引文件更新到本地的~/.cocoapods/repos目录下。
但是第一次执行pod setup时,这个github的Podspec索引文件比较大,有 300M 左右(以后会越来越大的),所以第一次更新时非常慢.要耐心等待…..

最后当出现 Setup completed 表示setup完成。

如果遇到如下报错

[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress

Cloning into 'master'...
remote: Counting objects: 2016093, done.        
remote: Compressing objects: 100% (555/555), done.        
error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

可能是Git的传输字节限制引起的,这时候使用 git config -l,查看Git配置,如下图,红色框是我配置的传输字节大小。

字节限制
解决方法:修改 传输字节限制,使用以下方法。后面的限制数字,可以自己定大小(524288000,相当于500M)
git config --global http.postBuffer 1048576000
执行后在 git config -l,看看是否修改成功。

如果遇到如下报错

  error: RPC failed; curl 18 transfer closed with outstanding read data remaining
  fatal: The remote end hung up unexpectedly
  fatal: early EOF
  fatal: index-pack failed

解决方法:更换镜像下载地址

1.进入pod目录

cd ~/.cocoapods/repos 

2.移除master

pod repo remove master

3.添加清华镜像

pod repo add master https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git

4.更新

pod repo update

如果第三步没有成功,(有的版本CocoaPods 不允许用pod repo add直接添加master库了)可以使用下面的方法

1.进入pod目录

cd ~/.cocoapods/repos 

2.移除master

pod repo remove master

3.添加清华镜像

git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git master

上述步骤成功后,需要进入自己的工程,在自己工程的podFile第一行加上:(这个代表你从哪里拉取Git代码)

source 'https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git'

*CocoaPods的使用方法

1、安装完以后,终端输入:

 pod search AFNetworking

成功后会,显示AFNetworking的相关信息 (注意:要在根目录下使用pod search,不要进入那个文件夹下使用。),如果你的pod 版本是1.8以上的时候,pod search 会出现以下错误 :[!] CDN: trunk Repo update failed (没有的请忽略),解决方法在下面的第三步,新建一个名为Podfile的文件里

2、进入项目目录 cd 文件路径

3、新建一个名为Podfile的文件

   touch Podfile
在这里插入图片描述

touch Podfile是建一个空白的文件,文件名是Podfile
执行完后可以在项目文件夹下看到这个文件,如下:


4、 编辑 Podfile文件

编辑文件有2中方法,第一种:直接双击文件打开,输入以下内容,保存

platform :ios, '7.0'
target 'SwiftFirst' do
pod 'AFNetworking', '~> 3.1.0'
end

其中 target 'SwiftFirst’ do 中的SwiftFirst是你的项目名称,platform :ios, ‘7.0' 支持最低的ios平台,pod 'AFNetworking', '~> 3.1.0’ 安装AFNetworking 3.1.0 版本,安装那个版本需要先pod search 这个第三方库,如果搜索不到,安装会失败

第二种使用终端:(推荐使用)
还是在项目目录下,输入vim Podfile,然后 按键盘的“i”键 编辑,输入上面的文本内容:

在这里插入图片描述
编辑完成后想要退出保存步骤:先按左上角的esc键,再按:键,再输入wq,点击回车,就保存并退出去了

注意:如果你pod版本再1.8 以上,pod search 出现以下错误 :[!] CDN: trunk Repo update failed (没有的请忽略)时。解决方法如下:

  1. podfile文件中指定source源为master,(写在第一行):
source 'https://github.com/CocoaPods/Specs.git'
  1. cd到项目目录下,执行pod repo remove trunk移除trunk源
pod repo remove trunk
  1. cd --到根目录下,在执行pod search AFNetworking,就能搜到AFNetworking。

参考链接:[!] CDN: trunk Repo update failed

5、 下载第三方库

注意安装的时候,最好把xcode先关掉,进入项目文件夹下,执行 pod install

pod install

当出现 Pod installation complete 的时候,说明成功了,这时候打开项目文件夹,发现多了几个文件,如下

这时候双击打开后缀名为.xcworkspace文件,就可以看到你引入的第三方库了


感谢以下作者的文章,如果有什么不足,欢迎下方指正。

参考链接:
安装CocoaPods报"RPC failed; curl 18 transfer closed with outstanding read data remaining".
Cocopods安装和使用教程.
安装CocoaPods步骤.

相关文章

网友评论

      本文标题:CocoaPods安装和使用

      本文链接:https://www.haomeiwen.com/subject/crwiahtx.html