输出如下:
rake aborted!
uninitialized constant Rake::DSL
/Users/marclipovsky/Sites/sat-7/app/Rakefile:6
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rake.rb:2383:in `load'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rake.rb:2383:in `raw_load_rakefile'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rake.rb:2017:in `load_rakefile'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rake.rb:2016:in `load_rakefile'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rake.rb:2000:in `run'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rake.rb:1998:in `run'
/usr/bin/rake:31这是我的耙文件:
require File.expand_path('../config/application', __FILE__)
require 'rake'
include Rake::DSL
App::Application.load_tasks甚至不知道该看什么或者从哪里开始。任何帮助都是非常感谢的。谢谢!
更新: Rake命令现在可以工作了,但是在它运行命令之前,我仍然会得到这样的命令:
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/file_utils.rb:10: warning: already initialized constant RUBY
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/file_utils.rb:84: warning: already initialized constant LN_SUPPORTED发布于 2011-07-28 16:11:57
有像Ruby on Rails and Rake problems: uninitialized constant Rake::DSL和uninitialized constant Rake::DSL in Ruby Gem这样的答案。我会先试试这个:
# [...]
require 'rake/dsl_definition'
require 'rake'
# [...]如果没有完全修复它,您可能可以将gem 'rake', '>=0.9.2'放在Gemfile中,然后执行bundle update,最后运行bundle exec rake db:migrate。
发布于 2011-10-20 18:59:53
对我起作用的是从我的系统中删除旧版本的rake。我跑完之后:
sudo gem uninstall rake -v 0.8.7
我不再看到这样的错误:
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/file_utils.rb:10: warning: already initialized constant RUBY
/Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/file_utils.rb:84: warning: already initialized constant LN_SUPPORTED
WARNING: Global access to Rake DSL methods is deprecated. Please include
... Rake::DSL into classes and modules which use the Rake DSL methods.
WARNING: DSL method Rake::TestTask#ruby called at /Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/file_utils_ext.rb:36:in `ruby'
WARNING: Global access to Rake DSL methods is deprecated. Please include
... Rake::DSL into classes and modules which use the Rake DSL methods.
WARNING: DSL method Object#ruby called at /Library/Ruby/Gems/1.8/gems/rake-0.9.2/lib/rake/file_utils_ext.rb:36:in `ruby'`
https://stackoverflow.com/questions/6862032
复制相似问题