2016-07-07 16 views
1

これは私のコンソール入力です:Commons cliでオプション名なしでconsole-app引数を取得するには?

javaのTCPPING -p -port 9900 -mps 30 -size 1000年PCB

PCBは、名前のないオプションの引数です。

オプションがないpcB引数を取得するにはどうすればよいですか?

小さなコード部分:

Options options = new Options(); 
options.addOption("", "hostname", true, "Hostname"); //no option name 
options.addOption("port", "port", true, "TCP socket used for connection"); 

CommandLineParser parser = new DefaultParser(); 
CommandLine commandLine = parser.parse(options, args); 

Integer port = Integer.parseInt(cmd.getOptionValue("port")); //works fine 
String hostname = cmd.getOptionValue("hostname"); //doesn't work 

答えて

0

CommandLine.getArgList()、またはCommandLine.getArgs()を見てみましょう。彼らはあなたが探しているものを行うべきです。つまり、他のオプションの一部として解析されなかった "残りの"引数を返します。

List<String> args = cmd.getArgList(); 

詳しくは、https://commons.apache.org/proper/commons-cli/javadocs/api-release/org/apache/commons/cli/CommandLine.html#getArgList--を参照してください。

+0

ありがとうございました!私は空の文字列でその引数を解析する方法があることを望んでいたが、私はそこにないと思う。 – asdf

関連する問題