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

GitBash中Rails服务器启动失败:Gemfile平台配置错误

Rails服务器启动失败:Gemfile无效平台"windows"问题解决

问题描述

昨天安装Rails后,在Sublime创建项目并成功通过GitBash启动服务器生成网页,修改代码后偶尔需重启服务器。今日进入同一目录执行rails s时,服务器无法启动,报错如下:

解析Gemfile时发现windows不是有效平台,可用平台选项包括[:ruby, :ruby_18, :ruby_19, :ruby_20, :ruby_21, :ruby_22, :ruby_23, :ruby_24, :ruby_25, :mri, :mri_18, :mri_19, :mri_20, :mri_21, :mri_22, :mri_23, :mri_24, :mri_25, :rbx, :jruby, :jruby_18, :jruby_19, :mswin, :mswin_18, :mswin_19, :mswin_20, :mswin_21, :mswin_22, :mswin_23, :mswin_24, :mswin_25, :mswin64, :mswin64_19, :mswin64_20, :mswin64_21, :mswin64_22, :mswin64_23, :mswin64_24, :mswin64_25, :mingw, :mingw_18, :mingw_19, :mingw_20, :mingw_21, :mingw_22, :mingw_23, :mingw_24, :mingw_25, :x64_mingw, :x64_mingw_20, :x64_mingw_21, :x64_mingw_22, :x64_mingw_23, :x64_mingw_24, :x64_mingw_25],Bundler无法继续执行,错误源自Gemfile第24行对应代码块:

gem "selenium-webdriver"

end

source "https://rubygems.org"

解决方案

  • 定位并修改Gemfile中的无效平台标识
    报错核心是Gemfile使用了Bundler不识别的:windows平台参数,需替换为Windows环境下的有效平台标识。根据报错给出的可用选项,Windows用户常用的有效标识为:

    • :mingw(适配32位Windows)
    • :x64_mingw(适配64位Windows,优先推荐)
    • 若需兼容多版本Windows,可使用数组形式[:mingw, :x64_mingw]

    找到Gemfile第24行附近的代码块,替换无效标识,示例如下:
    原代码:

    platforms :windows do
      gem "selenium-webdriver"
    end
    

    修改后:

    platforms :x64_mingw do
      gem "selenium-webdriver"
    end
    
  • 更新依赖并重启服务器
    保存Gemfile修改后,在GitBash中依次执行:

    1. 更新依赖:bundle install
    2. 启动服务器:rails s
  • 问题未解决的额外处理

    1. 检查Gemfile其他位置是否存在:windows这类无效平台标识,一并替换
    2. 清理Bundler缓存后重新安装依赖:bundle clean --force && bundle install

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.01 13:07:29