2015-03-17 4 views
0

Я пишу CLI в Scala, используя Scopt.Запуск опции scopt без значений

Я хотел бы добавить возможность вызова команды с или без значений.

Например:

CliUtility -o <value> <value> <value> 

отправить бы в послед [String] значений.

Я хочу быть в состоянии запустить -o

CliUtility -o 

Я хочу, чтобы отправить пустое Seq [String], но я не могу понять, как справиться с этим.

спасибо.

+0

Итак, что вы пробовали? – uberwach

ответ

0

От examples on github:

arg[File]("<file>...") unbounded() optional() action { (x, c) => 
c.copy(files = c.files :+ x) } text("optional unbounded args") 

производит следующий текст использования:

<file>... 
    optional unbounded args 

и соответствует files: Seq[File] в случае класса Config. Обратите внимание на два модификатора неограниченного и необязательного. Они делают так, что могут производить столько, сколько вам нравится, и это не требуется. Как вы можете видеть в примере кода класса case, значение по умолчанию для файлов - это пустой Seq, как вы хотите.

И последнее, но не менее важное: я должен упомянуть, что вы хотите установить флаг -o как символ, аналогичный тому, как пример github использует --verbose.

 Смежные вопросы

  • Нет связанных вопросов^_^