我正在做Hartls' railstutorial.org上的教程
我需要在64位Windows机器上运行Rails 4.0.8。这意味着我必须在我的tzinfo-data Gem上指定x64_mingw选项才能修复Rails时区错误。
Rails 4.0.8需要tzinfo v 0.3.37
x64_mingw需要tzinfo v 1.0.0
捆绑包失败,并且没有与tzinfo相匹配的版本'错误。
我该怎么办?我已经走了一半,我现在不想改变开发机器!我知道配置在32位操作系统上运行正常。
rails (= 4.0.8) x64-mingw32 depends on
activesupport (= 4.0.8) x64-mingw32 depends on
tzinfo (~> 0.3.37) x64-mingw32
tzinfo-data (>= 0) x64-mingw32 depends on
tzinfo (>= 1.0.0) x64-mingw32
GEMFILE =>
source 'https://rubygems.org'
ruby '2.0.0'
gem 'rails', '4.0.8'
group :development, :test do
gem 'tzinfo', '0.3.37'
gem 'sqlite3', '1.3.8'
gem 'rspec-rails', '2.13.1'
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw]
end
group :test do
gem 'selenium-webdriver', '2.35.1'
gem 'capybara', '2.1.0'
end
gem 'bootstrap-sass', '2.3.2.0'
gem 'sprockets', '2.11.0'
gem 'sass-rails', '4.0.3'
gem 'uglifier', '2.1.1'
gem 'coffee-rails', '4.0.1'
gem 'jquery-rails', '3.0.4'
gem 'turbolinks', '1.1.1'
gem 'jbuilder', '1.0.2'
group :doc do
gem 'sdoc', '0.3.20', require: false
end
group :production do
gem 'pg', '0.15.1'
gem 'rails_12factor', '0.0.2'
end
答案 0 :(得分:1)
您需要从Gemfile中删除对tzinfo-data的依赖。
如果您使用的是tzinfo 1.0.0或更高版本,则仅在Windows系统上需要tzinfo-data gem。 Rails 4.0使用tzinfo~> 0.3.37,所以tzinfo-data是不必要的。
原因是版本1.0.0之前的tzinfo包含了运行所需的所有时区数据(有效地捆绑了tzinfo-data gem)。随着1.0.0版的发布,数据被拆分为一个单独的gem。
如果您将来在Windows上升级到Rails 4.1,则需要更改Gemfile以删除对tzinfo的特定版本依赖性并重新添加tzinfo-data依赖项。这是因为Rails 4.1需要tzinfo~> 1.1。