只是一个预警:我是一个 rails 菜鸟。
当我运行时:
rake db:migrate
我收到此弃用警告:
WARNING: 'require 'rake/rdoctask'' is deprecated. Please use 'require 'rdoc/task' (in RDoc 2.4.2+)' instead.
at /Users/username/Code/rails/appname/rake/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/rdoctask.rb
我正在使用:
如果我卸载 rake 0.9.2.2 并使用 0.8.7 没有警告,但我宁愿不将其视为解决方案。
在谷歌搜索后,许多网站说我需要更新我的 Rakefile 中的一行(基本上将 require ‘rake/rdoctask’ 更改为 require ‘rdoc/task’)。但是,我的 Rakefile 看起来像这样:
require File.expand_path('../config/application', __FILE__)
require 'rake'
AppName::Application.load_tasks
没有需要替换的语句。当我添加 require 'rdoc/task' 时,它不起作用。当我在项目中搜索已弃用的“rake/rdoctask”时,没有结果。那么为什么 rails 会提示呢?
编辑:不确定这是否重要,但这是我的 gemfile:
source 'http://rubygems.org'
gem 'rails', '3.0.1'
gem 'sqlite3-ruby', :require => 'sqlite3'
group :development, :test do
gem 'rspec-rails', '2.0.1'
gem 'annotate-models', '1.0.4'
end
group :test do
gem 'rspec', '2.0.1'
gem 'webrat', '0.7.1'
gem 'spork', '0.8.4'
end
最佳答案
请注意,这在以后的 Rails 3.0.x 版本(例如 Rails 3.0.9)中得到修复。
修复不在顶级 Rakefile 中,而是在错误中提到的文件中;这只是一个通用通知:
if Rake.application
Rake.application.deprecate('require \'rake/rdoctask\'', 'require \'rdoc/task\' (in RDoc 2.4.2+)', __FILE__)
end
不过,它实际上与其他事物有关;见 this .
关于ruby-on-rails - rails : how do I resolve the 'rake/rdoctask' ' is deprecated' warning?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8702504/