You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacOS下React Native环境搭建遇Ruby版本不匹配问题求助

问题场景
  • 系统环境:MacOS Monterey 12.6
  • 已安装组件:node@16.18.0、npm 8.19.2、Xcode 14.0.1、Homebrew 3.6.7、watchman 2022.10.24.00、Ruby 2.6.8p205、CocoaPods(gem版本3.0.3.1,pod版本1.11.3)
  • 操作命令:npx react-native init AwesomeProject
  • 报错信息:

    Your Ruby version is 2.6.8, but your Gemfile specified 2.7.5

解决办法

方案1:用rbenv管理Ruby版本(推荐)

rbenv是轻量的Ruby版本管理器,能快速切换不同Ruby版本适配项目需求:

  1. 安装rbenv及ruby-build:
    brew install rbenv ruby-build
    
  2. 初始化rbenv到shell环境:
    • 若使用zsh:
      echo 'eval "$(rbenv init - zsh)"' >> ~/.zshrc
      source ~/.zshrc
      
    • 若使用bash:
      echo 'eval "$(rbenv init - bash)"' >> ~/.bash_profile
      source ~/.bash_profile
      
  3. 安装Ruby 2.7.5:
    rbenv install 2.7.5
    
  4. 设置Ruby版本:
    • 全局生效(所有项目默认用2.7.5):
      rbenv global 2.7.5
      
    • 仅当前项目生效(进入AwesomeProject目录后执行):
      rbenv local 2.7.5
      
  5. 验证版本:
    ruby -v
    
    确认输出为ruby 2.7.5p203(或对应版本号)后,重新执行npx react-native init AwesomeProject

方案2:修改项目Gemfile版本要求(临时 workaround)

如果不需要升级Ruby,可直接修改项目的Gemfile匹配当前Ruby版本:

  1. 报错后进入已生成的AwesomeProject目录
  2. 打开Gemfile文件,找到ruby '2.7.5'行,修改为ruby '2.6.8'
  3. 执行依赖安装:
    bundle install
    
  4. 继续完成React Native项目初始化流程

方案3:调整brew Ruby的PATH优先级

若已通过brew安装Ruby 2.7.5,但系统默认Ruby仍被优先调用:

  1. 查看当前Ruby路径:
    which ruby
    
    若输出为/usr/bin/ruby,说明系统Ruby优先级更高
  2. 安装Ruby 2.7.5(若未安装):
    brew install ruby@2.7
    
  3. 编辑shell配置文件(/.zshrc或/.bash_profile),添加:
    export PATH="/usr/local/opt/ruby@2.7/bin:$PATH"
    
  4. 刷新配置:
    source ~/.zshrc  # 对应你的shell配置文件
    
  5. 验证版本后重新执行项目初始化命令

内容的提问来源于stack exchange,提问作者Imdadul Haque

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 08:05:27