Console application with Java and gradle
By default, the system.in of your Gradle build is not wired up with the system.in of the run (JavaExec) task. You can do the following:
build.gradle (Groovy syntax):
run {
standardInput = System.in
}
build.gradle.kts (Kotlin DSL syntax):
tasks.named<JavaExec>("run") {
standardInput = System.`in`
}
For build.gradle.kts
:
tasks.getByName<JavaExec>("run") {
standardInput = System.`in`
}
As stated above, add
run {
standardInput = System.in
}
And run:
gradle console:run -q --console=plain
where:
-q
runs task in "quiet" mode (to avoid having> Building > :run
)--console=plain
drops execution status:<=-> 80% EXECUTING [TIME]
Source: https://docs.gradle.org/current/userguide/gradle_command_line.html