Как разобрать аргумент с args4j в kotlin? - PullRequest
0 голосов
/ 27 апреля 2019

Мне нужно разобрать информацию из командной строки, поэтому я выбираю библиотеку args4j.Формат командной строки: ls [-l] [-h] [-r] [-o output.file] directory_or_file.

Я попытался создать параметры, а затем проанализировать.Когда я получаю только «-ls», вывод верен, но когда я получаю «-ls -l» (более 1 аргумента), программа не останавливается, и я могу войти в командную строку, пока я не принудительно остановлю программу.Буду благодарен за любую помощь!

public class Settings {
    @Option(name = "-ls", usage = "Init command")
    var command  = false
    @Option(name = "-l", usage = "Long flag")
    var longFlag  = false
    @Option(name = "-h")
    var humanReadable = false
    @Option(name = "-r")
    var reversed = false

}
fun main() {
    val settings = Settings()
    val parser = CmdLineParser(settings)
    var args = mutableListOf<String>()
    val input = readLine()
    parser.parseArgument(input)
    print("${settings.command} ${settings.longFlag}")
...