美文网首页
Cocoapods1.8.4 踩坑解决

Cocoapods1.8.4 踩坑解决

作者: 彧哥哥 | 来源:发表于2020-02-15 16:11 被阅读0次

    最近使用pods,出现了以下错误
    [!] CDN: trunk Repo update failed - 39 error(s): CDN: trunk URL couldn't be downloaded: https://raw.githubusercontent.com/CocoaPods/Specs/master/Specs/7/2/d/GCDWebServer/1.2/GCDWebServer.podspec.json, error: Failed to open TCP connection to raw.githubusercontent.com:443 (Connection refused - connect(2) for "raw.githubusercontent.com" port 443) CDN: trunk URL couldn't be downloaded: https://raw.githubusercontent.com/CocoaPods/Specs/master/Specs/7/2/d/GCDWebServer/2.1.1/GCDWebServer.podspec.json, error: Failed to open TCP connection to raw.githubusercontent.com:443 (Connection refused - connect(2) for "raw.githubusercontent.com" port 443) CDN: trunk URL couldn't be downloaded: https://raw.githubusercontent.com/CocoaPods/Specs/master/Specs/7/2/d/GCDWebServer/2.2/GCDWebServer.podspec.json, error: Failed to open TCP connection to raw.githubusercontent.com:443 (Connection refused - connect(2) for "raw.githubusercontent.com" port 443) CDN: trunk URL couldn't be downloaded: .....................

    解决办法:

    在podfile文件中添加source源:

    source 'https://github.com/CocoaPods/Specs.git'
    
    

    删除cdn源:(CocoaPods到1.8.4,国内cdn源用不了)

    #source 'https://cdn.cocoapods.org/'
    
    

    pod install和pod update可以正常操作,

    如果pod search有些库不正常,可以执行:

    pod repo remove trunk
    
    

    移除trunk源,执行完后,pod search就正常了!

    原因:

    在国内,由于墙或者其他莫名原因,CocoaPods速度似蜗牛一般,每次执行pod setup的时候,都可以去喝杯咖啡。

    CocoaPods 官方应该也发现了现在代码仓库越来越大,update速度极慢的问题。所以在1.7.2 开始使用CDN技术来实现速度的提升。当然测试阶段可能由于没有国内节点的原因,速度依旧很慢,受到大家的诟病。但是随着1.8.0版本的正式发布。CDN被作为了spec的默认来源,速度得到了质的飞跃,强烈建议升级使用。

    CDN是什么

    CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。

    通俗来讲就是作为一个网络加速器的存在.

    使用CDN后有哪些变化

    在1.8.0之前,我们默认安装cocoapods的时候会执行pod setup命令,会从https://github.com/CocoaPods/Specs.git拉取整个仓库代码,这时由于墙或者国内网络原因,这一过程是非常漫长的,大约需要半个小时以上时间。

    在执行pod update的时候,也是同样很慢,不会重新更新整个repo仓库,而是只会拉取当前工程所需的依赖。

    总结:

    使用CDN后我们就不用执行pod setup的操作,使用CDN后不会拉取整个仓库,,而改为了只会拉取当前所需,放在了 trunk的仓库。

    怎么使用CDN

    1. 速度升级你的cocoapods sudo gem install cocoapods -n /usr/local/bin

    2. 对于使用私有库或者已经使用私有库的项目,需要更改下source源,删除原有source:

    source 'https://github.com/CocoaPods/Specs.git'
    
    

    增加新的source:

    source 'https://cdn.cocoapods.org/'
    
    
    1. 与此同时, 执行:
      pod repo remove master
      命令,可以 解放电脑一些空间。

    作者:刘明洋
    链接:https://www.jianshu.com/p/f395eda2a388
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    相关文章

      网友评论

          本文标题:Cocoapods1.8.4 踩坑解决

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