Hi Gilles, I had a similar problem, where I wanted a series of command-line arguments to be like -N1=localhost:8000 -N2=localhost:8001 -N3=localhost:8002 etc.
The code below allowed me to get all the -N args values as an enumeration, and is based on some code I found in the documentation. Hope it makes sense and is useful. Regards -- Simon Option node = OptionBuilder.withArgName("property=value").hasArgs(2).withValueSeparator() .withDescription("brokerid=address").create("N"); options.addOption(node); CommandLineParser parser = new GnuParser(); CommandLine cli = parser.parse(options,args); Properties props = cli.getOptionProperties("N"); for (Enumeration keys = props.keys();keys.hasMoreElements();) { String key = (String) keys.nextElement(); String[] address = props.getProperty(key).split(":"); NodeInfo n = new NodeInfo(Integer.parseInt(key),address[0],Integer.parseInt(address[1])); cfg.addNode(n); } On Tue, May 24, 2011 at 2:13 PM, Gilles Sadowski < gil...@harfang.homelinux.org> wrote: > Hello. > > [With official release 1.2] > > I'd like to call a commmand "cmd" as follows: > $ cmd --foo a --foo b --foo c cmdArg1 cmdArg2 > > There can be any number of arguments to the option "--foo". When I try, > the parser ("GnuParser") considers the "cmdArg1" and "cmdArg2" arguments as > arguments to the "--foo" option. > This is so even with the "stopAtNonOption" flag set to true. > > When I try > $ cmd --foo 'a b c' cmdArg1 cmdArg2 > I don't get 3 separate option arguments "a", "b", "c", but a single string > "a b c". > > > Best regards, > Gilles > > --------------------------------------------------------------------- > To unsubscribe, e-mail: user-unsubscr...@commons.apache.org > For additional commands, e-mail: user-h...@commons.apache.org > >