引数なしで1つのパラメータを取るレーキタスクを作成したいとします。OptionParser :: MissingArgument
task :mytask => :environment do
options = Hash.new
OptionParser.new do |opts|
opts.on('-l', '--local', 'Run locally') do
options[:local] = true
end
end.parse!
# some code
end
は、しかし、それはスロー:一方
$ rake mytask -l
rake aborted!
OptionParser::MissingArgument: missing argument: -l
:
$ rake mytask -l random_arg
ready
なぜ?
- レーキ10.4.2
- JRubyの1.7.13
OptionParserが最適なプランです'rake'はすでに独自のオプション解析と、最後に' VAR = value'を使ってデータを渡す方法です。ここでは 'LOCAL = 1'のように動作します。例については、[この回答](http://stackoverflow.com/questions/825748/how-to-pass-command-line-arguments-to-a-rake-task)を参照してください。 – tadman
@tadmanフラグとして私のオプションを持っていたいです。 – Viktor