耙子流产!不知道如何构建任务' doc:app'

时间:2016-04-22 22:49:48

标签: ruby-on-rails ruby rake rdoc ruby-on-rails-5

official documentation indicates我应该能够使用rake doc:app为我的应用程序构建文档,但是当我在Rails 5中运行命令时,我得到以下输出:

bwerth@bwerth-VirtualBox:~/rails/gep$ rake doc:app
rake aborted!
Don't know how to build task 'doc:app' (see --tasks)

(See full trace by running task with --trace)

1 个答案:

答案 0 :(得分:4)

此功能在版本5中为removed from Rails,具有以下理由:

  

...根据我们的经验,应用程序不使用doc:app生成API ...如果团队绝对需要生成应用程序文档   出于内部目的,他们仍然可以轻松编写自己的任务......

通过在/lib/tasks/documentation.rake上创建一个文件,可以轻松恢复该功能,其中包含以下内容,取自last version of the official task

# /lib/tasks/documentation.rake
require 'rdoc/task'

namespace :doc do
  RDoc::Task.new("app") { |rdoc|
    rdoc.rdoc_dir = 'doc/app'
    rdoc.template = ENV['template'] if ENV['template']
    rdoc.title = ENV['title'] || 'Rails Application Documentation'
    rdoc.options << '--line-numbers'
    rdoc.options << '--charset' << 'utf-8'
    rdoc.rdoc_files.include('README.md')
    rdoc.rdoc_files.include('app/**/*.rb')
    rdoc.rdoc_files.include('lib/**/*.rb')
  }
  Rake::Task['doc:app'].comment = "Generate docs for the app -- also available doc:rails, doc:guides (options: TEMPLATE=/rdoc-template.rb, TITLE=\"Custom Title\")"
end

虽然,在这一点上,从命令行运行这样的东西似乎更容易:

rdoc --main README.md --title 'My Fancy Title' README.md app/**/*.rb lib/**/*.rb