使用Ruby安装CocoaPods
一、安装CocoaPods
1、查看当前Ruby版本
Mac电脑自带Ruby环境,但是安装CocoaPods需要2.2.2版本及以上的,查看当前Ruby版本
// 终端执行
ruby-v
// 执行结果如下:如果不是下面的版本,下面会演示如何安装
ruby3.3.6(2024-11-05revision75015d4c1f)[arm64-darwin24]
//如果执行结果为:说明没有安装ruby需要安装
zsh: command not found: rbuy
2、安装RVM
后面需要使用RVM来安装或者升级Ruby;分别执行下面三条命令:
curl -L https://get.rvm.io | bash -s stable
source ~/.bashrc
source ~/.bash_profile
如果执行第一条命令后报错:说明SDN污染,需要查找真实IP在hosts中添加对应映色
终端输入如下命令进入hosts:
sudo vi /etc/hosts
输入 i 进入编辑模式,并如图添加IP地址与域名,完成后按esc键输入 :wq 退出编辑模式
输入:185.199.108.133 raw.githubusercontent.com
IP:185.199.108.133
域名:raw.githubusercontent.com
IP地址查询网址:https://www.ipaddress.com
这里是查询处理的IP,选一个就可以了
重新一次执行命令安装RVM
curl -L https://get.rvm.io | bash -s stable
source ~/.bashrc
source ~/.bash_profile
3、查看RVM版本
// 终端执行rvm-v
// 结果如下
rvm1.29.12(latest)byMichalPapis,PiotrKuczynski,WayneE.Seguin[https://rvm.io]
4、安装ruby
1.查看可用安装
// 终端执行
rvm list known
结果如下:
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.10]
[ruby-]2.3[.8]
[ruby-]2.4[.10]
[ruby-]2.5[.8]
[ruby-]2.6[.6]
[ruby-]2.7[.2]
[ruby-]3[.0.0]
ruby-head
.....
以下省略
上面显示的最新版本是ruby-3.0.0,但是截止到标题日期最新版是3.3.6 稳定版,下面安装会使用3.3.6进行示例(最新版可能会有一些兼容问题,例如一些插件并没有支持到最新版导致不能正常使用,这个遇到问题了再说)。
2.安装ruby
rvm install 3.3.6
或
rvm install ruby-3.3.6
提示报错:Something went wrong during Homebrew installation,
can not find 'brew' command, please report a bug: https://github.com/rvm/rvm/issues
Requirements installation failed with status: 1.
说明需要安装 Homebrew
3.安装Homebrew:
检测是否安装homebrew
brew -v
如果有安装就卸载在在安装:
卸载命令:/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
没有安装或者卸载后执行安装命令:
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
后续按提示进行就可以了,安装完需按提示重启终端,或者输入命令:
如果安装Homebrew失败就需要卸载重新安装
重新执行命令:rvm install 3.3.6 安装ruby
5、设置Ruby默认版本
如果你安装了多个Ruby就需要设置一下默认的版本
rvm use 3.3.6 --default
6、更新镜像源
查看当前镜像源命令:gem sources -l
执行结果如下那么就需要替换成国内镜像:
***CURRENTSOURCES***
https://rubygems.org/
1、移除原有镜像源:
gem sources --remove https://rubygems.org/
2、添加国内镜像源:
gem sources --add https://gems.ruby-china.com
3、再次查看当前镜像源命令结果如下就表示替换成功:gem sources -l
*** CURRENT SOURCES ***
https://gems.ruby-china.com
7、安装cocoapods
sudo gem install -n /usr/local/bin cocoapods
如果以上安装cocoapads报错
ERROR: While executing gem ... (Gem::FilePermissionError)
更换为下面安装方式
gem install cocoapods --user-install
8、安装本地库,这个内容有点多,建议先看完在操作
说明:该步骤是安装本地库,不安装也没事,项目可以照常pod install,只不过pod search 命令用不了;
/// A.如果你开启了梯子
gitclonehttps://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/trunk
/// B.这是国内的镜像地址,不需要梯子,速度刚刚的,想省事的就直接选这个吧gitclonehttps://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git ~/.cocoapods/repos/trunk
上述命令执行完成之后的目录结构见下图,如果不是就自己手动移动一下
检验一下成果
pod search Alamofire /// 第一次比较慢,耐心等待 按Q键退出搜索
二、CocoaPods的具体使用
新建一个Xcode工程,cd到工程根目录下
/// 创建Podfile文件执行命令:
pod init
1.通过xcode打开添加依赖库进行验证,如下
2通过vim来配置podfile:
先用 cd 进入到工程中去,输入指令vim podfile 创建 Podfile 文件,然后按 i 进入到编辑模式来配置 Podfile 文件:
按 Esc 退出编辑,按 Shift +冒号,输入 wq 退出文件编辑,然后下载 Podfile 文件内的第三方,执行命令:pod install
常用命令:
# 第一次使用安装框架 //只用安装一次,之后使用 添加删除都用pod update --no-repo-update
$ pod install
# 安装框架,不更新本地索引,速度快
$ pod install--no-repo-update
# 今后升级、添加、删除框架,或者框架不好用
$ pod update
# 更新框架,不更新本地索引,速度快
$ pod update--no-repo-update
# 搜索框架
$ pod searchXXX
# 帮助
$ pod--help
三、CocoaPods使用过程中遇到的问题
1、去除CocoaPods相关库警告
去除所有警告,在platform :ios, ‘x.0’ 的后面加入这句:
inhibit_all_warnings!
对单个消除警告:
pod'MJExtension','~>3.0.15.1',:inhibit_warnings=>true
2、[!] Unable to find a pod with name, author, summary, or description matching xxx.
解决办法:
删除~/Library/Caches/CocoaPods目录下的search_index.json文件
rm~/Library/Caches/CocoaPods/search_index.json
3、[!] CDN: trunk URL couldn't be downloaded: https://raw.githubusercontent.com/CocoaPods/Specs/master/Specs/2/e/7/YTKNetworkExtension/0.1.0/YTKNetworkExtension.podspec.json, error: Failed to open TCP connection to raw.githubusercontent.com:443 (Connection refused - connect(2) for "raw.githubusercontent.com" port 443)
问题原因:
CocoaPods 1.8+将CDN切换为默认的spec repo源,并附带一些增强功能!CDN支持最初是在1.7版本中引入的,最终在1.7.2中完成。 它旨在大大加快初始设置和依赖性分析。
解决办法:
podfile文件中添加source源:
source 'https://github.com/CocoaPods/Specs.git
移除trunk
pod reporemovetrunk
四、CocoaPods卸载
1.卸载老版本cocopods
sudo gem uninstall cocoapods
2.查看本地安装过的cocopods相关东西
gem list --local | grep cocoapods
显示如下:
cocoapods(1.0.1)cocoapods-core(1.0.1)cocoapods-deintegrate(1.0.1)cocoapods-downloader(1.1.1)cocoapods-plugins(1.0.0)cocoapods-search(1.0.0)cocoapods-stats(1.0.0)cocoapods-trunk(1.0.0)cocoapods-try(1.1.0)
然后使用命令逐个删除
sudo gem uninstall cocoapods-coresudo gem uninstall cocoapods-deintegrate
如果怕删不干净有残留的话可以找到 .cocopods 文件(隐藏文件)删掉就好
看不到该文件可以在终端输操作
显示隐藏文件:defaults write com.apple.finder AppleShowAllFiles-booltruekillall Finder隐藏文件:defaults write com.apple.finder AppleShowAllFiles-boolfalsekillall Finder
删除完之后接下来安装RVM(如果以前安装过的话需要找到.rvm然后删掉 和.cocopods同理)