2
使用任务依赖关系表示法,可以将参数传递给默认任务。例如,说 “版本” 是你的论点:将参数传递给Rake默认任务而不指定任务名称
task :default, [:version] => [:build]
task :build, :version do |t,args|
version = args[:version]
puts version ? "version is #{version}" : "no version passed"
end
然后就可以调用它像这样:
$ rake
no version passed
或
$ rake default[3.2.1]
version is 3.2.1
或
$ rake build[3.2.1]
version is 3.2.1
然而,我还没有找到避免指定th的方法e传递参数时的任务名称(默认或构建)。
有谁知道使用这种表示法的方法,而不必指定任务名称? (即利用“默认”的语法呢?)
我知道receving参数的ENV []方法,如下所述: How do I have the :default Rake task depend on a task with arguments?
我正在寻找一种方式来使用内置符号(如上所示),但避免必须指定任务名称。
谢谢。我试图遵循代码,但我们会迷路。你认为一个补丁允许这是有道理的吗?我猜这个语法看起来有点奇怪 – Gal