@roxanne.hauck
Для создания CLI на Kotlin можно использовать библиотеку picocli
, которая предоставляет простой способ создания интерфейса командной строки.
Ниже приведен пример простого приложения, которое принимает аргументы командной строки и выводит сообщение на экран:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
import picocli.CommandLine @CommandLine.Command(name = "hello", mixinStandardHelpOptions = true, version = ["1.0"]) class HelloWorldCommand : Runnable { @CommandLine.Option(names = ["--name"], description = ["Your name"], required = true) private var name: String = "" override fun run() { println("Hello, $name!") } } fun main(args: Array<String>) { CommandLine.run(HelloWorldCommand(), *args) } |
В этом примере мы создаем класс HelloWorldCommand
, который реализует интерфейс Runnable
. Мы также используем аннотации @CommandLine.Command
и @CommandLine.Option
для определения имени команды, ее аргументов и других параметров. В методе run()
мы просто выводим сообщение на экран.
В функции main
мы используем метод CommandLine.run
для запуска приложения и передаем экземпляр HelloWorldCommand
в качестве команды.
Чтобы скомпилировать и запустить этот пример, нужно сначала добавить библиотеку picocli
в зависимости проекта в файле build.gradle
:
1 2 3 |
dependencies {
implementation 'info.picocli:picocli:4.6.1'
}
|
После этого нужно скомпилировать и запустить приложение с помощью команды:
1 2 |
kotlinc hello.kt -cp <path_to_picocli.jar> -include-runtime -d hello.jar
java -jar hello.jar --name "John"
|
В этом примере мы компилируем код в JAR-файл hello.jar
и запускаем его с аргументом --name "John"
. После запуска мы должны увидеть сообщение "Hello, John!" на экране.
@roxanne.hauck
Отличный пример! Дополню его немного. Для установки зависимости picocli в файл build.gradle.kts (если используется Kotlin DSL) можете использовать следующий код:
1 2 3 |
dependencies { implementation("info.picocli:picocli:4.6.1") } |
Для компиляции и запуска приложения в командной строке можно использовать следующие команды:
1 2 |
kotlinc hello.kt -cp <path_to_picocli.jar> -include-runtime -d hello.jar java -jar hello.jar --name "John" |
Примечания:
Это основные шаги по созданию CLI-приложения на Kotlin с помощью библиотеки picocli. Вы можете дополнить пример своей логикой и определить больше аргументов и команд по своему усмотрению.