自己的macbook吃灰很久了,最近拿出来运行flutter项目提示cocoapods版本过低,需要升级,随便搜了个升级命令
sudo gem install cocoapods,发现还是显示旧版本
说明我的环境不是 gem命令安装的,而是brew 命令安装的.
如何区分CocoaPods 是通过 gem 还是 brew 安装的呢?
检查是否是 gem 安装的 CocoaPods
执行以下命令,检查是否通过 gem 安装的:
gem list cocoapods
以下命令来检查 CocoaPods 的安装路径:
which pod
如果路径是 /usr/local/bin/pod,那么大概率是通过 gem 安装的
检查 brew 安装的 CocoaPods
brew list --cask | grep cocoapods
// 或者
brew info cocoapods
以下命令来确认 pod 命令的路径:
which pod
如果路径是 /usr/local/bin/pod,很可能是通过 gem 安装的。
如果路径是 /opt/homebrew/bin/pod 或者 /usr/local/Cellar/cocoapods/ 下的子路径,那么它就是通过 brew 安装的
一般情况下,上面名可以区分,但是我遇到的情况更加复杂
我使用gem list cocoapods
查看版本是1.15.2, 但是使用pod --veriosn 依然显示 1.11.2
我遇到的情况可能是通过 gem 或者 brew 安装了不同版本的 CocoaPods,但系统使用的 pod 命令默认指向的是一个特定版本
使用查找系统中所有可用的 pod 命令:
sudo find / -name pod
可以看到我的系统中有两个ruby版本和对应的两个cocoapods
使用查看环境变量命令检查
echo $PATH
发现我环境变量配置的是高版本的ruby,所以可确认了 pod 指向了错误的路径
所以解决办法是: 手动删除低版本的cocoapods.
1.手动进入那个文件路径找到对应文件
-
把文件拖拽到命令行执行 --version命令确认版本
3.删除对应的文件
卸载低版本ruby,也就是低版本ruby
我直接手动删除了
可以看出我手动删除的是brew命令安装的ruby,
所以我现在只有gem环境的ruby了,再次执行
brew install cocoapods 这样就能安装最新的cocoapods
网友评论