Unity 2021.3.45f检测错误Ruby版本,无法安装CocoaPods如何解决?
解决Unity iOS Resolver调用旧Ruby版本导致CocoaPods安装失败的问题
问题核心
Unity的iOS Resolver未加载你配置的Ruby 3.4.x环境,反而调用了系统自带的Ruby 2.6.10,引发依赖兼容性错误(如drb要求Ruby≥2.7.0)。
解决步骤
1. 让Unity继承终端的正确环境变量
关闭所有Unity实例,在终端中执行对应版本的Unity启动命令(替换为你的Unity安装路径):
open /Applications/Unity/Hub/Editor/2021.3.45f1/Unity.app
这样Unity会继承终端已配置的PATH和Ruby环境,直接使用3.4.x版本。
2. 手动预安装CocoaPods并让Resolver复用
- 在终端执行命令安装CocoaPods:
gem install cocoapods --user-install - 打开Unity,进入
Window > Package Manager,找到iOS Resolver,进入其设置面板,勾选Use system installed CocoaPods选项,让Resolver跳过自动安装,直接使用已装好的版本。
3. 修改Unity启动脚本(可选,永久生效)
如果不想每次都从终端打开Unity,可修改Unity的启动脚本:
- 找到Unity安装目录下的启动文件:
/Applications/Unity/Hub/Editor/2021.3.45f1/Unity.app/Contents/MacOS/Unity - 用文本编辑器打开,在文件最开头添加你的环境变量配置:
export PATH="/opt/homebrew/opt/ruby/bin:$HOME/.gem/ruby/3.4.0/bin:$PATH" export GEM_HOME="$HOME/.gem" export GEM_PATH="$HOME/.gem" - 保存后修改文件权限确保可执行:
chmod +x /Applications/Unity/Hub/Editor/2021.3.45f1/Unity.app/Contents/MacOS/Unity
4. 验证环境正确性
- 打开Unity后,在终端执行以下命令,检查Unity进程的PATH是否包含正确的Ruby路径:
输出中应能看到ps aux | grep Unity | grep -v grep/opt/homebrew/opt/ruby/bin排在路径前列。 - 运行iOS Resolver的
Install CocoaPods功能,确认不再出现Ruby版本错误。
内容的提问来源于stack exchange,提问作者Ole
相关产品推荐
相关产品推荐

