Подтвердить что ты не робот

Консольное приложение с Java и gradle

Я пишу консольное приложение с Java и gradle. Я использую плагин application и правильно настроил нужные поля в build.gradle.

В моем основном классе у меня есть BufferedReader, связанный с System.in. Здесь проблема: когда я запускаю gradle run в каталоге проекта, читатель не ждет ввода моего консоли. BufferedReader#readLine вместо этого возвращает null при первом вызове. Это поведение нежелательно для того, что я делаю.

Какое решение? Есть ли отдельный плагин для консольного приложения для gradle или мне нужно настроить плагин application как-то в соответствии с моими потребностями?

4b9b3361

Ответ 1

По умолчанию system.in вашей сборки gradle не подключен к system.in задачи run (JavaExec). Вы можете сделать следующее:

run{
    standardInput = System.in
}

Ответ 3

Скорее всего, проблема кроется в вашем Java-коде. Весь плагин приложения - это компиляция java-кода и запуск основного указанного вами класса. Можете ли вы опубликовать код в своем основном классе, который вы указали для плагина приложения (mainClassName)?