2011-07-26 19 views
5

Soy un novato en Groovy y estoy tratando de entender cuál es el significado del atributo args en CliBuilder. No estoy seguro de si esto significa la cantidad máxima de parámetros que una opción puede tomar.¿Qué significa 'args' en CliBuilder?

tengo algo así como

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) 

Cuando llamo a la secuencia de comandos que utilizo groovy test.groovy -b toto -p 10 11

Pero consigo:

toto 
10 

no ¿Debo obtener 10 11 para la opción -p ? Si no, ¿qué significa args?

Gracias

Respuesta

6

This post here debe explicar cómo funciona el parámetro args

Básicamente, es necesario agregar un espacio plural s a su línea println así:

println options.bs 

que debería entonces de impresión:

[10, 11]