Hello Veit, it looks to me, like this is a bug in 1.3.1 Could you please file a bug in our Issue tracker [1] and provide your code sample there?
Thank you! Benedikt [1] https://issues.apache.org/jira/browse/CLI Veit Guna <veit.g...@gmx.de> schrieb am Di., 6. Sep. 2016 um 10:09 Uhr: > Hi. > > I'm using 1.3.1 for parsing cmdline parameters. I stumbled across an odd > things when working with optional parameters like in the following > example: > > public static void main(String[] args) throws ParseException { > > Options options = new Options(); > > options.addOption( > > Option.builder("ls").longOpt("logSsl").desc("Activates SSL logging (very > noisy!)").build()); > options.addOption( > Option.builder("lr").longOpt("logRequest") > .desc("Activates > request/response logging with a maximum of n bytes per payload (default: > 10000)") > > .argName("byte-count").optionalArg(true).numberOfArgs(1).build()); > > CommandLineParser parser = new DefaultParser(); > CommandLine line = parser.parse(options, args); > System.out.println(line.getOptionValue("lr")); > } > > Executing it with "-lr -ls" returns "-ls". If I invoke it with "-lr 5000 > -ls" it returns 5000. > So it seems, although I marked it as an optional argument, it just takes > the next parameter "-ls" > as an argument for "-lr" - which I wouldn't expect. It could simply > identify whether it is an argument > by simply checking against the list of valid parameters and just return > null or something. > > Is this expected behavior? If so, how can I check if an optional argument > has been provided or not? > > Thanks. > Veit > > --------------------------------------------------------------------- > To unsubscribe, e-mail: user-unsubscr...@commons.apache.org > For additional commands, e-mail: user-h...@commons.apache.org > >