美文网首页cocoapods
CocoaPods安装和使用并遇到的坑

CocoaPods安装和使用并遇到的坑

作者: 長茳 | 来源:发表于2021-03-16 23:30 被阅读0次

    写在前面

    因换了一台新电脑需重新安装CocoaPods.
    本人电脑系统版本为:macOS Big Sur 版本 11.2.3.
    Xcode版本为:Version 12.4.

    一. 先把ruby源搞定

    安装CocoaPods,需要ruby环境,然而Mac系统默认会安装好ruby环境.打开Mac终端输入:

    gem sources -l //查看ruby源
    

    默认情况下:会显示

    https://rubygems.org/
    

    ruby源在墙内是访问不到的,需要置换为国内,原来一直用的是淘宝的,由于淘宝源不再更新,所以不在使用,现在用下面这个

    //删除原始的源
    gem sources --remove  https://rubygems.org/
    //添加新源(国内Ruby镜像)
    gem source -a https://gems.ruby-china.com
    

    只有在终端中出现下面文字才表明你上面的命令是成功的:

    https://gems.ruby-china.com added to sources
    

    为了验证你的Ruby镜像是并且仅是gems.ruby-china,可以用以下命令查看:

    gem sources -l        //检测是否成功
    

    只有在终端中出现下面文字才表明你上面的命令是成功的:

    https://gems.ruby-china.com
    

    二. 升级Gem

    Gem是来管理Ruby标准包.

    sudo gem update --system   //升级gem
    

    目前查看gem版本为

    gem -v           //查看版本
    3.2.9
    

    不升级在下面步骤可能会报很多错误的,因为Gem版本太低,无法安装CocoaPods.

    三. 安装CocoaPods

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

    查看版本:如果有版本号,则说明已经安装成功

       pod --version  //目前我的版本号为:1.10.1
    

    成功后,输入

    pod setup   //这条命令是将Github上的开源库都托管都安装Podspec索引安装到到本地
    

    检测是否安装成功:可以利用搜索AFNetworking来检测是否能搜索到

    检测结果:

    pod search AFNetworking
    Creating search index for spec repo 'master'.. Done!
    

    第一次会出现上面的 Creating search index for spec repo 'master'.. 等到 出现 Done 后 就会出现我们搜索的结果,再次输入命令就不会出现这行代码了,直接就能搜索了

    假如 pod search AFNetworking 竟然不好使了,报以下错误

    [!] CDN: trunk - Cannot perform full-text search because Algolia returned an error: 0: Cannot reach any host: execution expired, execution expired, execution expired, execution expired
    

    可以用终端执行命令 pod repo remove trunk 恢复正常,完美,可以搜索了.

    到此就代表 CocoaPods 真正安装成功!

    四. 利用cocoapods来安装第三方框架

    • 1.进入要安装框架的项目的.xcodeproj同级文件夹

    • 2.在该文件夹中新建一个文件Podfile, 执行如下命令

      pod init 
      或者
      touch Podfile
      

      在文件中输入自己需要的第三方项目库,我们以 AFNetworking 为例

      platform :ios, '9.0'
      target 'MyApp' do
        pod 'AFNetworking', '~> 4.0.1'
      end
      

      解释:

      • platform : ios, '9.0'代表当前AFNetworking支持的iOS最低版本是iOS 9.0,
      • MyApp就是你自己的工程名字,
      • pod 'AFNetworking', '~> 4.0.1'代表要下载的AFNetworking版本是4.0.1及以上版本,还可以去掉后面的'~> 4.0.1',直接写pod 'AFNetworking',这样代表下载的AFNetworking是最新版.
    • 3.执行pod,终端输入 pod install

    pod install
    
    • 4.导入第三方库
      --no-repo-update : 不更新仓库,迅速加载第三方框架

      pod install --no-repo-update
      pod update --no-repo-update
      
    • 5.CocoaPods中删除不需要的第三方库

      • 打开Podfile, 找到不需要的类库, 直接删除该类库信息
        比如要删除SDWebImage库 ,直接去Podfilepod 'SDWebImage',’~> 4.0.0'
      • 打开终端cd到当前项目的根目录下重新执行
      pod update --no-repo-update
      
      • 更新完成就删除成功

    五. 跳过pod setup快速安装

    在网络不允许的情况下,执行pod setup这一步, 感觉很慢.....
    前面说了,pod setup 这条命令是将Github上的开源库都托管都安装Podspec索引安装到到本地. 简单说就是下载一个包,到本地,也就是这个东西

    如果你同事电脑上有安装好,你其实可以从你同事电脑上拷贝过来,直接放到该路径就OK了.
    如果你身边没有装好的CocoaPods的朋友,可以访问这个链接
    https://github.com/CocoaPods/Specs (github所有的第三方开源库的Podspec文件都托管在这里,这也是你pod setup所要下载的).
    选择Download ZIP. 解压后为这个样子

    对比上图,Specs-master改名为master 放在 ~/.cocoapods/repos 路径即可.

    ~/.cocoapods/repos 这个路径是在执行 pod setup生成的,所以电脑无法前往此路径是,建议先pod setup下,然后关闭掉即可生成路径.

    写在后面

    最后和谐学习,不急不躁.我还是我,颜色不一样的烟火.

    相关文章

      网友评论

        本文标题:CocoaPods安装和使用并遇到的坑

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