Java 如何使用其他必需选项定义帮助选项?

Java 如何使用其他必需选项定义帮助选项?,java,apache-commons-cli,Java,Apache Commons Cli,我需要帮助选项(-h)和另外两个必需选项(-u,-p)共存 private static Options buildOptions() { Options options = new Options(); Option help = new Option("h", "help", false, "print this message"); Option user = OptionBuilder.hasArg() .isRequ

我需要帮助选项(-h)和另外两个必需选项(-u,-p)共存

private static Options buildOptions() {
    Options options = new Options();

    Option help = new Option("h", "help", false, "print this message");     

    Option user = OptionBuilder.hasArg()
                .isRequired(true)
                .withArgName("username")                   
                .withDescription("use given user name for login")
                .withLongOpt("user")
                .create("u");

    Option pass = OptionBuilder.hasArg()
            .isRequired(true)
            .withArgName("password")                   
            .withDescription("use given password for login")
            .withLongOpt("pass")
            .create("p");

    options.addOption(help);
    options.addOption(user);
    options.addOption(pass);
    return options;
}

但当我试图在不提供所需参数的情况下解析参数时,我会收到MissingOptionException。我正在寻找一种方法,能够通过在只有一个h和能够打印出只有帮助

我预先解析命令行以寻求帮助:

if ((args.length > 0) && (args[0].matches("^\\s*[-/]{0,2}[Hh](?i:elp)\\s*$"))) {
    usage();
}
我还可以在命令行中的任何位置查找
-help
,这样,如果我忘记了某个东西是
-debug
还是
-dbg
,我就可以使用它将其固定在部分命令行的末尾