0

Rake 在升级到 Rails 4 后无法运行,并且在我升级我的 gem 之前运行良好。我在 Ruby 1.9.3 上。由于某种原因,rdoc 无法识别标记属性,但我找不到任何关于它被删除或重命名的信息。

这是我收到的错误消息。

undefined method `markup=' for #<RDoc::Task:0x007fb4b46be660>

相关代码片段(未显示完整的 deploy.rake)

RollOut::DeployTask.new do |d|
d.test = RSpec::Core::RakeTask.new
d.doc = RDoc::Task.new :doc do |rdoc|
  rdoc.rdoc_files.include('README.md', 'lib/**/*.rb', 'app/**/*.rb')
  rdoc.rdoc_dir = 'target/doc'
  rdoc.markup = 'tomdoc'
end

完整的跟踪:

> RAILS_ENV=production rake assets:precompile --trace                        
rake aborted!
undefined method `markup=' for #<RDoc::Task:0x007fb4b46be660>
/Users/rust/test_app/lib/tasks/deploy.rake:16:in `block (2 levels) in 
<top (required)>'
/Users/rust/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/1.9.1/rdoc/task.rb:158:in
`initialize'
/Users/rust/test_app/lib/tasks/deploy.rake:14:in `new'
/Users/rust/test_app/lib/tasks/deploy.rake:14:in `block in <top
(required)>'
/Users/rust/roll_out/lib/roll_out/deploy_task.rb:73:in `initialize'
/Users/rust/test_app/lib/tasks/deploy.rake:12:in `new'
/Users/rust/test_app/lib/tasks/deploy.rake:12:in `<top (required)>'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/activesupport-  
4.0.0/lib/active_support/dependencies.rb:222:in `load'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/activesupport- 
4.0.0/lib/active_support/dependencies.rb:222:in `block in load'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/activesupport-    
4.0.0/lib/active_support/dependencies.rb:213:in `load_dependency'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/activesupport-
4.0.0/lib/active_support/dependencies.rb:222:in `load'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/railties- 
4.0.0/lib/rails/engine.rb:641:in `block in run_tasks_blocks'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/railties- 
4.0.0/lib/rails/engine.rb:641:in `each'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/railties- 
4.0.0/lib/rails/engine.rb:641:in `run_tasks_blocks'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/railties- 
4.0.0/lib/rails/application.rb:244:in `run_tasks_blocks'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/railties- 
4.0.0/lib/rails/engine.rb:446:in `load_tasks'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/railties-
4.0.0/lib/rails/railtie/configurable.rb:30:in `method_missing'
/Users/rust/test_app/Rakefile:7:in `<top (required)>'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/rake-
10.1.0/lib/rake/rake_module.rb:25:in `load'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/rake-
10.1.0/lib/rake/rake_module.rb:25:in `load_rakefile'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/rake- 
10.1.0/lib/rake/application.rb:637:in `raw_load_rakefile'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/rake- 
10.1.0/lib/rake/application.rb:94:in `block in load_rakefile'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/rake-
10.1.0/lib/rake/application.rb:165:in `standard_exception_handling'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/rake-
10.1.0/lib/rake/application.rb:93:in `load_rakefile'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/rake- 
10.1.0/lib/rake/application.rb:77:in `block in run'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/rake-
10.1.0/lib/rake/application.rb:165:in `standard_exception_handling'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/rake-
10.1.0/lib/rake/application.rb:75:in `run'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/gems/rake-10.1.0/bin/rake:33:in `<top 
(required)>'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/bin/rake:23:in `load'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/bin/rake:23:in `<main>'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/bin/ruby_noexec_wrapper:14:in `eval'
/Users/rust/.rvm/gems/ruby-1.9.3-p429/bin/ruby_noexec_wrapper:14:in `<main>'

有谁知道可能是什么原因和/或如何解决它?

4

1 回答 1

0

如果我将 gem 'rdoc' 添加到我的 gem 文件中,错误似乎消失了。我不确定为什么这有什么不同,因为它已经是另一个 gem 的依赖项

于 2013-06-28T15:57:48.340 回答