Описание тега picocli

Picocli - это библиотека синтаксического анализа командной строки для Java и других языков JVM. Отличительные особенности: предоставляет как программный, так и аннотационный API, справку по использованию с цветами ANSI, автозаполнение на поддерживаемых платформах и сильную поддержку вложенных подкоманд. Предназначен для дополнительного включения в качестве источника, чтобы избежать добавления зависимостей.
1 ответ

Как уменьшить медленный запуск приложений Picocli за счет отражения

Пикокли должен проанализировать дерево команд. Для этого необходимо загрузить классы объектов домена для каждой команды, что замедляет запуск jvm. Какие есть варианты, чтобы избежать этой задержки запуска? Одно из предложенных мной решений описано в…
29 сен '18 в 12:34
1 ответ

Picocli, как распознать наличие опции с необязательным значением и конвертером пользовательских типов

Picocli v2.3.0. @CommandLine.Option(names = {"--number-headings"}, arity = "0..1", paramLabel = "levels", description = {"Adds numbers to headings. Optional parameter to set the heading levels to be numbered.", "eg. 2-4"}) public HeadingNumberingRan…
05 апр '18 в 13:41
1 ответ

Picocli: как сделать необходимые подкоманды

У меня есть команда с подкомандами. В моем приложении я хочу, чтобы пользователь обязательно указывал подкоманду. Как мне это сделать? (Смотрите также https://github.com/remkop/picocli/issues/529)
29 окт '18 в 10:52
1 ответ

Picocli: как получить доступ к подкомандам после parseWithHandler(новый RunAll(), args)?

У меня есть команда с подкомандами, которые зарегистрированы декларативно, и я заинтересован в использовании этого стиля обработки командной строки: List<Object> parsed = commandLine.parseWithHandler(new RunAll(), args); Однако для целей модул…
1 ответ

Sbt задача для генерации отражения picocli graalvm?

В picocli они приводят примеры того, как генерировать конфигурации отражений GraalVM во время сборки для Maven и Gradle. Пример Gradle configurations { generateConfig } dependencies { compile 'info.picocli:picocli:3.9.3' generateConfig 'info.picocli…
14 фев '19 в 13:13
2 ответа

Picocli: лучший способ указать опцию с необязательным значением, которое печатает текущее значение, когда значение не указано

Я пишу REPL (поэтому я использую picocli для анализа команд, введенных в приложении, а не для анализа аргументов командной строки), и у меня есть команда с опцией, которую я хочу вести следующим образом: > cmd --myopt Myopt value = 5 > cmd --m…
1 ответ

Масштабируемые приложения с Picocli. Вопрос о лучшей практике

Скажем, мой проект имеет много логики и имеет несколько точек входа, которые являются командами CLI. Я отмечаю свои точки входа с @Command, инициализируй мой @Parameters а также @Option аннотированные поля и выполняют логику, которая больше не требу…
07 ноя '18 в 11:34
1 ответ

Синтаксический анализ параметров программы Java с помощью picocli не работает на этапе запуска задания Spinnaker.

Я запускаю основную программу java с аргументами, используя задачу запуска плагина Gradle. Программа использует picocli для разбора аргументов командной строки. Это прекрасно работает при запуске в моей среде Dev с помощью следующей команды: ./gradl…
11 янв '19 в 19:25
1 ответ

Groovy-Eclipse 2.5.2: java.lang.ClassNotFoundException: picocli.CommandLine$ParameterException

Я использую Eclipse 4.5 с плагином Groovy-Eclipse 2.9.2/4.5, который, как я думал, должен иметь компилятор Groovy 2.5. Тем не менее, он не имел никакой поддержки Picocli, поэтому я добавил groovy-cli-picocli-2.5.2-indy.jar на мой classpath и смог ск…
28 сен '18 в 21:09
1 ответ

Picocli: Отдельная ответственность за заполнение класса и выполнение приложения

Перед использованием cli у меня был бы начальный класс, который вызывает мой класс ApplicationPropertiesProvider (который читает мой файл свойств), а затем запускает бизнес-логику. Таким образом, произошло разделение, у ApplicationPropertiesProvider…
08 янв '19 в 14:58
2 ответа

picocli не работает с jline3 в cmd.exe

Я хочу использовать Picocli с Jline3. Поэтому я создаю проект со следующим pom.xml: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 htt…
07 фев '19 в 09:58
1 ответ

Picocli: Можно ли добавить параметр к параметру, когда кластерные короткие параметры запрещены?

(См. Также https://github.com/remkop/picocli/issues/488 ). У меня есть приложение, которое использует Map поле для опции: @Option(names = "-P") Map<String, String> properties; поэтому пользователи могут указывать такие значения, как: -Pmyprop=…
2 ответа

CLI с Picocli: вызов основной команды до вызова подкоманды

Я перешел с Apache Commons CLI на Picocli из-за поддержки подкоманд (и объявления на основе аннотаций). Рассмотрим инструмент командной строки, как git, с подкомандами вроде push, Git есть главный выключатель --verbose или же -v для включения подроб…
08 май '18 в 08:01
1 ответ

Как я могу обработать ошибки в picocli?

Я пытаюсь реализовать свой собственный CLI и хочу использовать picocli для анализа аргументов моих команд. Вот почему я не хочу, чтобы Picocli писал в консоли вообще. Итак, я создал класс MyCommand с некоторыми опциями и параметрами аннотаций. Тепер…
06 фев '19 в 00:09
4 ответа

Анализатор командной строки Scala с поддержкой подкоманд

Я ищу парсер командной строки для Scala с поддержкой подкоманд (что-то похожее на argparse в Python). Кажется, что есть несколько различных анализаторов командной строки для Scala (Scopt, Argot и т. Д.), Но ни один из них, похоже, не поддерживает ра…
13 ноя '11 в 16:19
2 ответа

Picocli: как всегда показывать заголовок / баннер

Picocli предлагает возможность добавить красивый заголовок в @Command аннотация, например: @Command(name = "git-star", header = { "@|green _ _ _ |@", "@|green __ _(_) |_ __| |_ __ _ _ _ |@", "@|green / _` | | _(_-< _/ _` | '_| |@", "@|green \\__,…
1 ответ

Picocli: как разделить параметры между родительской командой и подкомандами

Как поддерживать общие параметры для всех (или некоторых) команд и подкоманд? Например, если конечный пользователь предоставляет --stacktrace в любом месте аргументов командной строки любые напечатанные ошибки будут включать трассировку стека. Мы мо…
15 янв '19 в 22:37
3 ответа

Как преобразовать скрипт Picocli Groovy-Grape в собственное автономное приложение?

Я сделал свое первое отличное приложение CLI с picocli. Теперь я хочу, чтобы он был доступен для использования без какой-либо JVM, установленной на клиентском компьютере, возможно, с использованием GraalVM. Это для проекта с открытым исходным кодом:…
03 мар '19 в 18:08
1 ответ

Пикокли: Как можно справиться без аргументов и вариантов сценария

Я использую библиотеку командной строки Java picocli для реализации приложения командной строки. Однако я хотел бы знать, предлагает ли picocli функцию, которая может помочь справиться с ситуацией, когда командная строка не получает никаких аргумент…
04 апр '19 в 10:09
1 ответ

Завершение Кандидаты на позиционный параметр в picocli

Я пытаюсь обеспечить завершение для позиционных параметров. Где-то я заметил, что они не очень хорошо поддерживаются, но в настоящее время я не могу найти точное место в спецификации, и я не уверен, что это на самом деле означает. Тем временем я обн…
05 апр '19 в 08:05