2011-07-26 9 views
5

Jestem początkującym użytkownikiem Groovy i staram się zrozumieć, co oznacza atrybut args na CliBuilderze. Nie jestem pewien, czy oznacza to maksymalną liczbę parametrów, jakie może przyjąć opcja.Co oznacza "args" w CliBuilderze?

mam coś

import java.text.* 

def test(args) { 
def cli = new CliBuilder(usage: 'test.groovy brand instance') 
    cli.with { 
     h longOpt: 'help', 'Show usage information' 
    } 

    cli.b(argName:'brand', args: 1, required: true, 'brand name') 
    cli.p(argName:'ports', args: 2, required: true, 'ports') 

    def options = cli.parse(args) 
    if (!options) { 
      return 
    } 

    if (options.h) { 
      cli.usage() 
      return 
    } 

    println options.b 
    println options.p 

} 

test(args) 

gdy zgłoszę skrypt używam groovy test.groovy -b toto -p 10 11

ale dostaję:

toto 
10 

nie powinienem dostać 10 11 dla opcji -p ? Jeśli nie, to co oznaczają oznaczenia?

Dzięki

Odpowiedz

6

This post here powinien wyjaśnić, w jaki parametr args działa

Zasadniczo trzeba dodać mnogą s do linii println tak:

println options.bs 

które powinny następnie druk:

[10, 11]