0
我正在將在Ubuntu上運行Rails 2.3.2的舊Rails應用程序升級到最新的Rails 2.3.15。該應用程序最初有軌的vendored版本vendor/rails
但是我已經刪除了,安裝了rails 2.3.15
寶石,並改變了版本號config/environment.rb
到:Ruby 2.3.15錯誤:格式錯誤的版本號字符串
RAILS_GEM_VERSION = '2.3.15' unless defined? RAILS_GEM_VERSION
在重新啓動應用程序,我得到在此錯誤信息雜種日誌(防止應用程序啓動):
/usr/local/lib/site_ruby/1.8/rubygems/version.rb:53:in `initialize': Malformed version number string (ArgumentError)
from /usr/lib/ruby/gems/1.8/gems/rails-2.3.15/lib/rails/vendor_gem_source_index.rb:105:in `new'
from /usr/lib/ruby/gems/1.8/gems/rails-2.3.15/lib/rails/vendor_gem_source_index.rb:105:in `version_for_dir'
from /usr/lib/ruby/gems/1.8/gems/rails-2.3.15/lib/rails/vendor_gem_source_index.rb:47:in `refresh!'
from /usr/lib/ruby/gems/1.8/gems/rails-2.3.15/lib/rails/vendor_gem_source_index.rb:45:in `each'
from /usr/lib/ruby/gems/1.8/gems/rails-2.3.15/lib/rails/vendor_gem_source_index.rb:45:in `refresh!'
from /usr/lib/ruby/gems/1.8/gems/rails-2.3.15/lib/rails/vendor_gem_source_index.rb:29:in `initialize'
from /usr/lib/ruby/gems/1.8/gems/rails-2.3.15/lib/rails/gem_dependency.rb:21:in `new'
from /usr/lib/ruby/gems/1.8/gems/rails-2.3.15/lib/rails/gem_dependency.rb:21:in `add_frozen_gem_path'
... 17 levels...
from /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/command.rb:212:in `run'
from /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:281
from /usr/bin/mongrel_rails:19:in `load'
from /usr/bin/mongrel_rails:19
我需要做些什麼才能避免這個錯誤?
你可能會打印'RAILS_GEM_VERSION',以便我們可以看到正在使用哪個版本號? – Phrogz
您何時/在哪裏要我這樣做? – Andrew
由於錯誤的來源('rubygems/version.rb' - 也就是'rubygems'的'version'模塊),我猜'rubygems'說的是它自己的版本號是畸形的,或者它試圖加載的寶石的版本號格式不正確。嗯。 – Matchu