【问题标题】:readLine() doesn't wait for user input in Kotlin/NativereadLine() 不等待 Kotlin/Native 中的用户输入
【发布时间】:2019-11-23 16:10:25
【问题描述】:

这是一个简单的脚本

fun main() {
    print("ready> ")
    val input = readLine()
    println("User input: $input")
}

当我用gradle runReleaseExecutableMacos 运行这个程序时,我希望我会看到一个ready> 提示并且可以输入一些字符。但是这个程序立即以User input: null 结束。

我错过了什么吗?

【问题讨论】:

  • readLine() ==> readLine()!!

标签: kotlin kotlin-native


【解决方案1】:

要实现您想要的行为,您可以运行 Gradle 生成的可执行文件。它将有一个扩展名*.kexe


此外,您可以使用附加参数扩展您的 build.gradle 文件。你必须添加这样的东西:

macosX64("macos") {
    binaries {
        executable {
            runTask.standardInput = System.in
        }
    }
}

【讨论】:

  • 在'in' ```macosX64("macos") { binaries { executable { runTask?.standardInput = System.in } } } ``` 周围使用记号
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-17
  • 2016-05-06
  • 1970-01-01
  • 1970-01-01
  • 2012-06-12
相关资源
最近更新 更多