Cocoapods 最新 集成总结

2020-01-16  本文已影响0人  Mr_Lxh

背景:Mac OS Catalina 10.15.1 Xcode11.2.1

Cocoapods 版本:1.8.4

暴露问题:

    1、pod install 命令出现问题  

    2、trunk 分支问题 

    3、cocoapods 源不稳定问题 

解决:问题太多 决定卸载重装 记录流程。

卸载:

1、卸载cocoapods

问题1:在cocoapod 执行卸载 语句

sudo gem uninstall cocoapods 

的时候 While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /usr/bin directory.
改为:

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

2、卸载本地cocoapods相关的插件
执行:

gem list --local | grep cocoapods

查询相关插件 如下图所示:


001.png

逐个删除相关插件:

sudo gem uninstall cocoapds-core
sudo gem uninstall cocoapods-deintegrate
sudo gem uninstall cocoapods-downloader
sudo gem uninstall cocoapods-plugins
sudo gem uninstall cocoapods-search
sudo gem uninstall cocoapods-stats
sudo gem uninstall cocoapods-trunk
sudo gem uninstall cocoapods-try
...

3、查看gem 更新ruby源地址

这里官方简易尽可能的使用比较新的RubyGems版本,建议2.6.x以上

//更新gem 
gem update --system # 这里请翻墙一下

//查询gem 版本 
gem -v

查看ruby源

gem sources -l

查询结果如下:

002.png

因为我电脑本身就是最新的ruby源就不重新装了 不是上图中的源 需要移除老的ruby源 更新成这个
语句如下:

//移除ruby源  XXXXXX代表你查出来的源地址
gem sources --remove XXXXXX

//添加新ruby源
gem sources --add https://gems.ruby-china.com

//查询是否更新成功 
gem sources -l

//确保只有 gems.ruby-china.com

4、安装Cocoapods

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

安装成功如下图所示:


003.png

5、执行pod setup

这步因为pod setup 克隆的镜像源 是国外的 so...换了个方式 用了国内的镜像 。(如果不换 pod setup 大概率不成功,或下一天可能,浪费时间,本人找了一天的替代源。)这里感谢下 CSDN的大佬的一篇文章,附上文章链接Pod setup 太慢终极解决办法

当我们去执行pod setup的时候,会发现那是一个相当的慢。估计一天的时间都浪费再这上面。这是因为使用的国外的镜像,只要使用国内的镜像就很好的解决了。

//查找repo 移除master文件
cd ~/.cocoapods/repos
pod repo remove master
//使用大佬给的国内镜像源
git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git master

你会发现,那速度,老铁 6666...

这部分执行完后 就是cocoapods的使用了 不多做赘述 都比较熟悉了 我就简单的写下流程:

//cd 到项目路径下 
cd xxxxxx
//初始化pod
pod init
//编辑podfile
open Podfile
//编辑完成 
pod install

这里有个问题:
Cocoapods升级到v1.8后pod trunk发生异常
trunk Repo update failed


004.png

我新建立了个项目,集成了一个测试的demo, pod里只加了一个三方库 集成成功了。但是在自己的项目上出现了这个问题 。原因是自己项目里集成的第三方太多
解决方案 并不是网上说的把什么trunk删除 podfile上改source 而是链接不稳定的问题 遇到这种情况

需要把Podfile上的第三方库 需要一个一个的加三方库 然后一个一个的pod install 多试几次!!! 直到 pod install成功为止!

2020-05-13 更新:

最近打算把公司项目转成纯swift的 ,新建了个swift 的项目,cocoapods又出问题了 还是 报trunk Repo update failed问题 在podfile 加了个source :

source 'https://gitee.com/mirrors/CocoaPods-Specs.git'

完美解决。

问题二:pod install出现警告。

[!] The 168LogisticsSwiftTests [Debug] target overrides the ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES build setting defined in Pods/Target Support Files/Pods-168LogisticsSwift-168LogisticsSwiftTests/Pods-168LogisticsSwift-168LogisticsSwiftTests.debug.xcconfig'. This can lead to problems with the CocoaPods installation - Use the$(inherited)` flag, or
- Remove the build settings from the target.

网上给出的解决方法:

image.png

实际操作一遍 还是会出现警告

所以,先从这些警告入手, 进入工程项目文件夹 ->右键点击 .xcodeproj 文件 显示包内容 -> 打开 .pbxproj 文件 -> 文本搜索提示警告的内容 ’ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES’ -> 找到这些内容删除
然后输入 pod update 进行更新

解决了。具体为什么要删除这个配置 我百度了一下 没有找到能解释的文章 暂时先照着说的改一下 留待以后追究。

上一篇 下一篇

猜你喜欢

热点阅读