我正在构建一个简单的Kotlin应用程序,它获取用户输入,然后将其打印到屏幕上:

while (true) {
    val PROMPT = ">>> "

    print(PROMPT)
    val userInput = readLn()

    println(userInput)
}

但每当我使用./gradlew run运行此应用程序时,我都会收到以下消息:

<========---> 80% EXECUTING [2m 30s]
>>> ===---> 80% EXECUTING [2m 31s]
<==========---> 80% EXECUTING [2m 34s]

以下是我试图删除它们的内容:

在我的build.gradle.kts文件中:

tasks.named<JavaExec>("run") {
    standardInput = System.`in`
    standardOutput = System.out
    logging.captureStandardOutput(LogLevel.QUIET)
    logging.captureStandardError(LogLevel.QUIET)
}

我还try 将captureStandardOutputcaptureStandardErrorLogLevel更改为LogLevel.ERROR,但仍收到这些"正在执行"的消息

推荐答案

try 使用以下标记在cmd中运行Gradle:

例如:

./gradlew -q --console=plain run

但当我测试这些标志时,我遇到了一个问题:Gradle不会在用户提示前打印没有换行符的文本消息到控制台,即print("smt")方法没有效果,但println("smt")方法工作得很好.我不知道为什么会发生这种事.

Kotlin相关问答推荐

创建具有共同父类型的两种不同类型对象的列表的最有效方法是什么?

查看流数据和改进的HTTP请求的模型

将带大括号和不带大括号的Lambda值赋给@Composable函数

Kotlin中一个接口的实现问题

有没有办法在 jetpack compose 中将 TextField 密码点图标增加得更大?

Kotlin中是否可以混合使用推断和显式的通用类型参数?

可组合项在返回后返回时组合导航句柄

如何在 Spring Boot 3 中为内部类提供运行时提示

如何避免键盘打开时jetpack compose 内容上升

如何规避 Kotlin 的泛型类型差异约束

使用 Discord4j 交叉发布 Discord 消息

如何用 kotlin 打包 List

如何在MVVM架构中观察RecyclerView适配器中的LiveData?

Kotlin使用运行时断言进行空判断?

任何处理器都无法识别以下选项:'[kapt.kotlin.generated, room.incremental]'

在 Kotlin 中创建非绑定服务

Kotlin数据类打包

在 IntelliJ Idea 中未为 Kotlin @ConfigurationProperties 类生成 spring-configuration-metadata.json 文件

如何判断数据是否插入到房间数据库中

如何在 Kotlin 中生成 MD5 哈希?