我正在使用
Rails 2.3.5,Ruby 1.8.7
运行以下命令后出现以下错误。有什么想法吗?
$ rake gem:install
$ rake/rdoctask is deprecated. Use rdoc/task instead (in RDoc 2.4.2+)
$ rake aborted!
$ rake gem:install --trace
rake/rdoctask is deprecated. Use rdoc/task instead (in RDoc 2.4.2+)
rake aborted!
uninitialized constant ActiveSupport::Dependencies::Mutex
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/ext/module.rb:36:in `const_missing'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:55
/Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
/Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `require'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support.rb:56
/Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
/Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `require'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/tasks/misc.rake:18
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/tasks/rails.rb:4:in `load'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/tasks/rails.rb:4
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/tasks/rails.rb:4:in `each'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/tasks/rails.rb:4
/Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
/Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `require'
/Users/P/Dev/loginform/unobtrusive-login/Rakefile:10
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/rake_module.rb:25:in `load'
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/rake_module.rb:25:in `load_rakefile'
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:495:in `raw_load_rakefile'
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:78:in `load_rakefile'
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling'
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:77:in `load_rakefile'
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:61:in `run'
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling'
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:59:in `run'
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/bin/rake:32
/usr/bin/rake:19:in `load'
/usr/bin/rake:19
答案 0 :(得分:2)
查看Rakefile
中的第一行。变化:
require 'rake/rdoctask'
要:
require 'rdoc/task'
修改强>:
看起来你有像Ruby嫌疑人那样的Rubygems不兼容问题。您需要升级您的Rails版本,或降级您的gem版本。
您可以使用以下内容更改为任何宝石版本:
gem update --system x.y.z
使用
查看有关您的问题的更多信息uninitialized constant ActiveSupport::Dependencies::Mutex
下面:
Uninitialized constant ActiveSupport::Dependencies::Mutex (NameError)
答案 1 :(得分:2)
我正在使用Ruby 1.8.7和Rails 2.3.8并得到完全相同的错误。所以我将RubyGems版本更改为1.5.3并解决了问题。所以你需要做的是写这个命令: “gem update --system 1.5.3” 它会将您的ruby gems版本更新为1.5.3,这完全适用于rails 2.3.8。 希望它有所帮助。
答案 2 :(得分:0)
你有哪个版本的rubygems?要使用2.3.5,您可能需要使用< = 1.4和rake 0.8.7。
的rubygems