解决方法
在更新的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为我工作.