【发布时间】:2014-01-18 06:25:36
【问题描述】:
在现有 Heroku 应用程序上将 Ruby 版本设置为 2.1.0 时,我遇到了非常奇怪的问题。 尝试部署时,出现此错误:
! Invalid RUBY_VERSION specified: ruby-2.1.0
! Valid versions: ruby-2.0.0, ruby-1.9.3, ruby-1.9.2, ruby-1.8.7, ruby-1.9.3-jruby-1.7.0, ruby-1.8.7-jruby-1.7.0, ruby-1.9.3-jruby-1.7.1, ruby-1.8.7-jruby-1.7.1, ruby-1.9.3-rbx-2.0.0dev, ruby-1.8.7-rbx-2.0.0dev
在部署到 Heroku 的新 Rails 应用上,新的 Ruby 版本没有问题。
我的宝石文件:
source 'https://rubygems.org'
ruby '2.1.0'
gem 'rails', '~> 3.2.14'
gem 'pg'
gem 'unicorn'
gem 'pry'
gem 'active_model_serializers'
gem 'activeadmin'
gem 'activerecord-postgres-hstore'
gem 'acts-as-taggable-on', git: 'git://github.com/mbleigh/acts-as-taggable-on.git'
gem 'addressable', '~> 2.3.2', require: 'addressable/uri'
gem 'airbrake'
gem 'alchemy-api-rb', :require => ['alchemy_api', 'excon']
gem 'bcrypt-ruby', '~> 3.0.1'
gem 'browser'
gem 'cancan'
gem 'ckeditor', '= 4.0.2'
gem 'dalli'
gem 'filepicker-rails', git: 'https://github.com/limonka/filepicker-rails.git'
gem 'geocoder'
gem 'google_places'
gem 'google_places_autocomplete'
gem 'haml', '~> 3.1.6'
gem 'haml-rails', '~> 0.3.4'
gem 'heroku-api'
gem 'kaminari'
gem 'koala', '= 1.5.0'
gem 'memcachier'
gem 'metainspector', '~> 1.15.3'
gem 'newrelic_rpm'
gem 'jbuilder', '1.2.0'
gem 'paper_trail'
gem 'paperclip'
gem 'pusher'
gem 'rack-cache', require: 'rack/cache'
gem 'rack-mini-profiler'
gem 'recaptcha', require: 'recaptcha/rails'
gem 'rest-client'
# FIXME: Make sure that the bug with sidekiq-failures has been fixed: https://github.com/mhfs/sidekiq-failures/pull/49
gem 'sidekiq', '= 2.15.2'
gem 'sidekiq-failures'
gem 'simple_form', '~> 2.0.1'
gem 'sinatra', '~> 1.3.0', require: false
gem 'slim', '~> 1.3.8'
gem 'sorcery'
gem 'sunspot_rails', '= 2.0.0'
gem 'sunspot_solr', '= 2.0.0'
gem 'state_machine'
gem 'uglifier', '~> 1.2.3'
gem 'yajl-ruby'
gem 'rack-cors', require: 'rack/cors'
gem 'rubyzip', '~> 0.9.9'
gem 'paper_trail'
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'asset_sync'
gem 'fog', '~> 1.11.1'
gem 'compass', '= 0.12.2'
gem 'compass-rails', '~> 1.0.1'
gem 'compass_twitter_bootstrap', git: 'https://github.com/vwall/compass-twitter-bootstrap.git', ref: '1a7b5ce5'
gem 'coffee-rails', '~> 3.2.1'
gem 'handlebars_assets', '~> 0.6.6'
gem 'jquery-rails', '~> 2.1.4'
gem 'sass-rails'
gem 'coffee-script-source', '~> 1.6.2'
gem 'turbo-sprockets-rails3'
end
group :test, :development do
gem 'capybara'
gem 'database_cleaner', '~> 0.7.2'
gem 'factory_girl'
gem 'faker'
gem 'jasminerice', git: 'git://github.com/bradphelan/jasminerice.git'
gem 'minitest', '~> 4.0'
gem 'launchy'
gem 'localtunnel'
gem 'pusher-fake', '= 0.9.0'
gem 'ruby-prof'
gem 'selenium-webdriver', '~> 2.34.0'
gem 'webmock', '~> 1.10.2', require: false
gem 'mocha', require: false
end
group :development do
gem 'bullet'
gem 'foreman'
gem 'growl'
gem 'hirb'
gem "letter_opener"
gem 'mailcatcher'
gem 'powder'
gem 'thin'
gem 'wirble'
gem 'yaml_db'
end
有什么想法吗?
【问题讨论】:
-
您的 ruby 版本是否已在 Gemfile 中声明?类似于:source "rubygems.org" ruby "1.9.3"
-
在您的 GemFile 或其他任何东西中有任何依赖项吗?如果不是您能够在 ruby 2.1.0 中使用新的 rails 应用程序,我会说这是版本不兼容错误,但显然不是
-
@hernanvicente 我已将 Gemfile 添加到问题中。
-
根据这篇文章,ruby 2.1.0 应该可用devcenter.heroku.com/changelog-items/376 我正在寻找更多信息:D
-
@hernanvicente 并且它在我的旧应用程序上运行得非常好 - 它没有。当然,我在雪松堆栈上......
标签: ruby-on-rails ruby heroku ruby-2.1