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

Ruby on Rails无法创建测试项目,求助解决依赖报错问题

解决Ruby on Rails安装中的nokogiri兼容与webpacker缺失问题

作为刚接触Rails的新手,连续三天卡在这里确实挺闹心的,我来帮你一步步解决这两个核心问题:

一、nokogiri版本与Ruby 2.7.1不兼容的问题

你遇到的报错明确指出:nokogiri 1.10.9要求Ruby版本在>=2.3, <2.7.dev范围内,但你当前用的是Ruby 2.7.1,版本不匹配导致安装失败。有两个可行的解决方向:

方向1:升级nokogiri到兼容Ruby 2.7的版本

nokogiri从1.11.0版本开始正式支持Ruby 2.7,你可以通过以下步骤更新:

  • 打开项目根目录下的Gemfile,添加或修改nokogiri的版本指定(如果Gemfile里没有单独写nokogiri,直接执行后续命令也会更新依赖):
    gem 'nokogiri', '~> 1.11.0'
    
  • 在终端运行命令更新依赖:
    bundle update nokogiri
    
    这条命令会自动安装兼容你Ruby版本的nokogiri,同时更新相关的依赖链。

方向2:切换到兼容nokogiri 1.10.9的Ruby版本

如果你不想升级依赖,可以切换到Ruby 2.6.x系列版本(比如2.6.10),这个版本既在Rails 6.0的支持范围内,也满足nokogiri 1.10.9的要求:

  • 如果你用的是rbenv或rvm这类Ruby版本管理工具,直接切换版本:
    # rbenv的情况
    rbenv install 2.6.10
    rbenv local 2.6.10
    
    # rvm的情况
    rvm install 2.6.10
    rvm use 2.6.10 --default
    
  • 切换完成后,重新运行bundle install即可正常安装nokogiri。

二、webpacker gem找不到的问题

报错提示找不到webpacker (~>4.0) x64-mingw32,主要是因为缺少相关依赖或Gemfile配置问题,按以下步骤排查:

  1. 确认Gemfile中存在webpacker配置
    打开项目的Gemfile,确保有这一行(Rails 6默认会包含,但可能被误删或注释):

    gem 'webpacker', '~> 4.0'
    

    如果没有,添加后保存。

  2. 安装Node.js和Yarn(webpacker的前置依赖)
    webpacker需要Node.js(版本>=10.13.0)和Yarn来管理前端资源,Windows环境下需要先安装这两个工具:

    • 下载安装Node.js(选择LTS版本即可)
    • 安装完成后,在终端运行npm install -g yarn安装Yarn
  3. 重新安装依赖并初始化webpacker
    回到项目根目录,依次运行以下命令:

    bundle install
    rails webpacker:install
    

    如果还是提示找不到gem,可以尝试强制指定平台(Windows环境下偶尔需要):

    bundle config set force_ruby_platform true
    bundle install
    

按照以上步骤操作,应该能解决你遇到的两个问题,顺利启动Rails项目。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 11:17:29