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

Windows11下rails server启动失败 报tzinfo-data缺失错误

Ruby on Rails启动报TZInfo::DataSourceNotFound错误解决方案

报错根因

错误栈直接定位核心问题:Windows环境运行Rails 7.0.3版本时,tzinfo时区组件找不到可用数据源,缺少强制依赖的tzinfo-data gem,导致Puma启动流程直接退出。
操作流程存在一处前置命令错误:新建Rails应用的命令为rails new test_app,而非gem new test_app,错误命令生成的目录结构不完整,会触发后续各类依赖报错。

分步解决流程

  • 先清理错误生成的应用目录,重新执行正确的应用创建命令:
# 删除之前错误命令生成的test_app目录后,执行正确创建命令
rails new test_app
  • 进入应用根目录,打开根目录下的Gemfile配置文件,找到tzinfo-data对应的配置行,确保Windows平台下该gem被启用,不要注释这行,配置参考如下:
# Windows system does not include zoneinfo files, so bundle the tzinfo-data gem
gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw, :jruby]
  • 保存Gemfile后,在应用根目录执行依赖安装命令,拉取缺失的gem包:
bundle install
  • 如果执行完上述步骤仍报同类tzinfo错误,手动安装和当前tzinfo 2.0.x版本兼容的tzinfo-data包:
gem install tzinfo-data -v '~> 2.0'
  • 依赖安装完成后,执行启动命令验证服务:
rails server
# 如果存在全局gem版本冲突,用bundle exec前缀执行
# bundle exec rails server

其他同类报错排查

  • 若后续出现webpacker相关报错,是因为Rails 7默认使用importmaps作为前端资源方案,不需要全局安装webpacker。如果确实需要使用webpacker,新建应用时要加指定参数:rails new test_app -j webpacker。
  • 若出现sqlite3相关加载错误,注意安装sqlite3 gem时要匹配本地Ruby版本,Windows环境建议直接使用带Devkit的Ruby安装包,避免编译依赖缺失。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 08:03:19