Ruby on rails 启动rails应用程序时遇到困难
我正在尝试运行Rails应用程序,但得到以下输出:Ruby on rails 启动rails应用程序时遇到困难,ruby-on-rails,ruby,rake,haml,Ruby On Rails,Ruby,Rake,Haml,我正在尝试运行Rails应用程序,但得到以下输出: ruby script/server => Booting Mongrel => Rails 2.3.4 application starting on http://0.0.0.0:3000 /home/umar/.rvm/gems/ruby-1.8.6-head/gems/rails-2.3.4/lib/rails/gem_dependency.rb:119:Warning: Gem::Dependency#version_r
ruby script/server
=> Booting Mongrel
=> Rails 2.3.4 application starting on http://0.0.0.0:3000
/home/umar/.rvm/gems/ruby-1.8.6-head/gems/rails-2.3.4/lib/rails/gem_dependency.rb:119:Warning: Gem::Dependency#version_requirements is deprecated and will be removed on or after August 2010. Use #requirement
/home/umar/.rvm/gems/ruby-1.8.6-head/gems/haml-2.0.0/lib/haml/helpers/action_view_mods.rb:46:in `alias_method': undefined method `capture_erb_with_buffer' for module `ActionView::Helpers::CaptureHelper' (NameError)
from /home/umar/.rvm/gems/ruby-1.8.6-head/gems/haml-2.0.0/lib/haml/helpers/action_view_mods.rb:46
from /home/umar/.rvm/rubies/ruby-1.8.6-head/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /home/umar/.rvm/rubies/ruby-1.8.6-head/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /home/umar/.rvm/gems/ruby-1.8.6-head/gems/activesupport-2.3.4/lib/active_support/dependencies.rb:156:in `require'
from /home/umar/.rvm/gems/ruby-1.8.6-head/gems/activesupport-2.3.4/lib/active_support/dependencies.rb:521:in `new_constants_in'
from /home/umar/.rvm/gems/ruby-1.8.6-head/gems/activesupport-2.3.4/lib/active_support/dependencies.rb:156:in `require'
from /home/umar/.rvm/gems/ruby-1.8.6-head/gems/haml-2.0.0/lib/haml/helpers.rb:1
from /home/umar/.rvm/rubies/ruby-1.8.6-head/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
... 34 levels...
from /home/umar/.rvm/gems/ruby-1.8.6-head/gems/rails-2.3.4/lib/commands/server.rb:84
from /home/umar/.rvm/rubies/ruby-1.8.6-head/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /home/umar/.rvm/rubies/ruby-1.8.6-head/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from script/server:3
下面是我的gem list命令的输出:
gem list
*** LOCAL GEMS ***
actionmailer (2.3.4)
actionpack (2.3.4)
activerecord (2.3.4)
activerecord-jdbc-adapter (1.1.1)
activerecord-jdbcmysql-adapter (1.1.1)
activeresource (2.3.4)
activesupport (2.3.4)
builder (3.0.0)
cgi_multipart_eof_fix (2.5.0)
daemons (1.1.3)
fastthread (1.0.7)
gem_plugin (0.2.3)
haml (2.0.0)
jdbc-mysql (5.1.13)
mongrel (1.1.5)
rack (1.0.1)
rails (2.3.4)
rake (0.8.7)
rspec (1.3.1)
rspec-rails (1.3.3)
will_paginate (2.2.2)
我的gem-v是1.3.7
如何修复此错误?使用旧版本的haml肯定会有问题。HAML2.0使用这种方法捕获带有缓冲区的缓冲区,这种缓冲区在2.1.0以后的Rails版本中不存在
确保在安装正确的gem之后,在项目根目录中使用haml--rails命令进行升级和安装 我不熟悉haml,但它似乎是错误的根源。2.0.0是最新版本吗?您验证过它是否与Rails 2.3.4兼容吗?@DGM实际问题在弃用警告下面:“模块
ActionView::Helpers::captureheloper
”的未定义方法capture\u erb\u with_buffer
“哎哟,错过了!忽略密切的建议!我安装了haml-v2.2.2,这个错误消失了。但另一个错误“无法删除Object::ClassMethods”已经开始出现。但如果我不能解决它,那是另一个帖子!