TGViewer
Java Ready | Программирование Java Ready | Программирование @java_ready · 9.26K subscribers
Post #1178 1.62K
Парсинг аргументов через picocli

Сегодня создадим готовый CLI с флагами, параметрами и встроенной справкой (--help, --version) без ручного парсинга.

Подключаем:
implementation "info.picocli:picocli:4.7.6"


Теперь определим саму команду, которая будет выполняться при запуске:
@picocli.CommandLine.Command(
name = "hello",
mixinStandardHelpOptions = true
)
class Hello implements Runnable {


Далее добавим флаг, который управляет выводом:
@picocli.CommandLine.Option(
names = "--upper",
description = "Выводить в верхнем регистре"
)
boolean upper;


Теперь зададим параметр, который нужно будет передать при вызове:
@picocli.CommandLine.Parameters(
paramLabel = "NAME",
description = "Имя пользователя"
)
String name;


И наконец, опишем основную логику работы программы:
public void run() {
var msg = "Hello, " + name;
System.out.println(upper ? msg.toUpperCase() : msg);
}}


🔥 Такой подход экономит время, упрощает код и делает консольные утилиты более профессиональными и удобными для пользователя.

👉 Java Ready | #практика
  • 🔥 5
  • 👍 4
  • ❤ 3
  • 👎 1
More from @java_ready
  1. Oct 13, 2026Почему нельзя просто проигнорировать InterruptedException? Поток может ждать завершения за…
  2. Oct 13, 2026Собрала чат-бота за вечер → заработала 10 000₽. Просто представь, кто-то стоит в очереди н…
  3. Oct 13, 2026Как поддерживать один плагин для Paper и Velocity? Paper запускает игровой сервер, а Veloc…
  4. Oct 12, 2026Делаем простой CSV exporter на Java! Иногда нужно быстро выгрузить данные в CSV. Например,…
  5. Oct 12, 2026🗂 Пакет Безопасности — папка, которую админ собирал более 10 лет ⚡️ Слитые курсы по IT и…
  6. Oct 12, 2026Проверяем обновления через ETag в Java! Когда приложение часто запрашивает один ресурс, не…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →