我见过的Cakefiles文档似乎是一个例子,这是一个典型的例子:
option '-v', '--verbose [TRUE|FALSE]', 'Turn verbosity on/off (off by default)'
task 'spec', 'run specs', (options) ->
jasmine = require 'jasmine-node'
# ...
但是当我想要这个时会发生什么:
option '-v', '--verbose [TRUE|FALSE]', 'Turn verbosity on/off (off by default)'
task 'spec', 'run specs', (options) ->
jasmine = require 'jasmine-node'
# ...
option '-d', '--directory [PATH]', 'specific directory to set up the widget in'
task 'createWidgets', 'create the widgets', (options) ->
console.log options.verbose
选项特定于文件,而不是任务,这意味着(a)选项渗透到文件中的所有任务,以及(b)运行cake
时,用户不清楚哪些选项是与哪些任务相关联。
如何将选项与特定任务相关联?
答案 0 :(得分:1)
没有办法通过cake.coffee
提供的任何功能添加特定于任务的选项 - 如果查看source,您会看到全局处理选项。您可以自己编写该代码,通过编写读取节点process.argv
的代码,按每个任务提取选项。但是,cake.coffee
实际上是一个非常简单的构建工具,除了最简单的构建系统之外,我不会推荐它。您可能希望查看rake
或make
之类的内容。