You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Emmanuel Bourg (JIRA)" <ji...@apache.org> on 2011/06/02 22:23:47 UTC
[jira] [Resolved] (CLI-220)
MissingOptionException.getMissingOptions() returns OptionGroup, not just
String
[ https://issues.apache.org/jira/browse/CLI-220?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Emmanuel Bourg resolved CLI-220.
--------------------------------
Resolution: Fixed
> MissingOptionException.getMissingOptions() returns OptionGroup, not just String
> -------------------------------------------------------------------------------
>
> Key: CLI-220
> URL: https://issues.apache.org/jira/browse/CLI-220
> Project: Commons CLI
> Issue Type: Bug
> Components: CLI-1.x, Documentation
> Affects Versions: 1.2
> Reporter: Joe Casadonte
> Priority: Minor
> Fix For: 1.3
>
>
> The following code:
> {code:title=Test.java|borderStyle=solid}
> import java.util.List;
> import org.apache.commons.cli.CommandLine;
> import org.apache.commons.cli.CommandLineParser;
> import org.apache.commons.cli.GnuParser;
> import org.apache.commons.cli.MissingOptionException;
> import org.apache.commons.cli.Option;
> import org.apache.commons.cli.OptionBuilder;
> import org.apache.commons.cli.OptionGroup;
> import org.apache.commons.cli.Options;
> public class Test {
> public static void main(String[] argv)
> {
> Option opt_foo =
> OptionBuilder.hasArg(false)
> .isRequired(true)
> .withDescription("option foo")
> .create("foo");
> Option opt_bar =
> OptionBuilder.hasArg(false)
> .isRequired(false)
> .withDescription("option bar")
> .create("bar");
> Option opt_baz =
> OptionBuilder.hasArg(false)
> .isRequired(false)
> .withDescription("option baz")
> .create("baz");
> OptionGroup optgrp = new OptionGroup();
> optgrp.setRequired(true);
> optgrp.addOption(opt_bar)
> .addOption(opt_baz);
> Options optsdef = new Options();
> optsdef.addOption(opt_foo)
> .addOptionGroup(optgrp);
> try {
> CommandLineParser parser = new GnuParser();
> CommandLine cmdline = parser.parse(optsdef, argv);
> }
> catch (MissingOptionException ex) {
> List opts = ex.getMissingOptions();
> for (Object option : opts) {
> System.out.println("OPT: " + option.getClass().getName());
> }
> }
> catch (Exception ex) {
> ex.printStackTrace();
> System.exit(1);
> }
> }
> }
> {code}
> produces the following output:
> {code}
> </tmp/MissingOptionException> $ javac -cp commons-cli-1.2.jar Test.java
> </tmp/MissingOptionException> $ java -cp commons-cli-1.2.jar:. Test
> OPT: java.lang.String
> OPT: org.apache.commons.cli.OptionGroup
> {code}
> The JavaDoc for MissingOptionException.getMissingOptions() says:
> {quote}
> Return the list of options (as strings) missing in the command line parsed.
> {quote}
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira