2016-02-16 1 views
2

Я пытаюсь установить имя параметра с дефисами в нем, как «исходные файлы», используя java-библиотеку Apache Commons CLI.Могу ли я создать имя параметра с дефисами в apache commons cli?

Option option = new Option("source-files", true, "List of source files") 

Я получаю эту ошибку,

java.lang.IllegalArgumentException: opt contains illegal character value '-' 
at org.apache.commons.cli.OptionValidator.validateOption(OptionValidator.java:73) 
at org.apache.commons.cli.Option.<init>(Option.java:123) 
at org.apache.commons.cli.Option.<init>(Option.java:105) 

Что означает, что я не могу использовать имя параметра дефисом в нем, что является стандартным с командами Unix. Я заметил, что документация Commons CLI упоминает имя дефисной версии в одном из своих примеров. Я что-то упустил?

ответ

3

Вы можете использовать только - в «длинное имя»:

options.addOption("S", "source-files", true, "List of source files") 

Если вы хотите только длинное имя, возможно, придется использовать OptionBuilder (не уверен).