Я знаю, что входной поток автоматически закрывается в конце этого вида блока в Groovy:
def exec = ""
System.in.withReader {
println "input: "
exec = it.readLine()
}
но есть ли способ открыть поток, если я хочу сделать что-то подобное:
def exec = ""
while(!exec.equals("q")) {
System.in.withReader {
println "input: "
exec = it.readLine()
}
if(!exec.equals("q")) {
//do something
}
}
Когда я пытаюсь это сделать, я получаю эту ошибку при втором выполнении цикла while:
Exception in thread "main" java.io.IOException: Stream closed
Так, каков был бы лучший способ достигнуть этого?
Спасибо.