红宝石 – 耙子:如何从任务内部输出任务列表?

前端之家收集整理的这篇文章主要介绍了红宝石 – 耙子:如何从任务内部输出任务列表?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想我的:Rakefile中的默认任务是一个有用的消息,还包括对于不熟悉耙子的人的可用任务列表(rake -T的输出).

你如何从任务内部调用rake -T?

解决方法

在更新的rake版本中,从内部任务中调用rake -T有点复杂.需要设置的选项可以从方法standard_rake_options中的rake / lib / application.rb派生.基本上归结到
Rake::TaskManager.record_task_Metadata = true

task :default do
  Rake::application.options.show_tasks = :tasks  # this solves sidewaysmilk problem
  Rake::application.options.show_task_pattern = //
  Rake::application.display_tasks_and_comments
end

请注意,无法在默认任务中设置record_task_Metadata,因为执行任务已经太迟了(描述将不会被收集,因此这些没有任何任务与模式匹配).尝试从任务中重新加载Rakefile会导致闭环.我假设当总是收集元数据时,有性能交易.如果这是一个问题

task :default do
  system("rake -sT")  # s for silent
end

可能更适合

两者都使用耙子0.9.2.2为我工作.

猜你在找的Ruby相关文章