我希望我的:Rakefile中的默认任务是一个有用的消息,其中还包括不熟悉rake的人的可用任务列表(rake -T的输出).
你如何从任务中调用rake -T?
小智 12
rake -T
在较新版本的rake中,从任务内部调用会稍微复杂一些.需要设置的选项可以从rake/lib/application.rb
方法中派生standard_rake_options
.基本上归结为
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
Run Code Online (Sandbox Code Playgroud)
请注意,record_task_metadata
无法在默认任务中设置,因为在执行任务时已经太晚了(描述将不会被收集,因此这些都是零,因此没有任务与模式匹配).尝试从任务中重新加载Rakefile将导致闭环.我假设在总是收集元数据时有性能交易.如果这是一个问题
task :default do
system("rake -sT") # s for silent
end
Run Code Online (Sandbox Code Playgroud)
可能更合适.
两者都使用rake 0.9.2.2为我工作.
归档时间: |
|
查看次数: |
1996 次 |
最近记录: |