Дождитесь пользовательского ввода при отладке на IntelliJ IDEA и Gradle
У меня самое простое Java-приложение, которое просто работает, если выполняется из командной строки. Но если я хочу отладить его с помощью IntelliJ IDEA 14 Ultimate,System.in.read()
часть всегда возвращается-1
, не вводя ничего в него:
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
System.out.println("This is a test... Hit [enter] to exit.");
int cha = System.in.read();
System.out.println("You hit [enter], exiting...");
}
}
Это какая-то проблема с Windows 8.1 или это связано с IntelliJ IDEA?
ОБНОВИТЬ: Я обнаружил, что проблема возникает только при запуске приложения через Gradle (Gradlew Run), так что это проблема Gradle. Это моеbuild.gradle
:
apply plugin: 'java'
apply plugin: 'application'
sourceCompatibility = 1.7
targetCompatibility = 1.7
version = '1.0'
mainClassName = 'net.frakbot.ws.Main'
repositories {
mavenCentral()
}
run {
main = 'net.frakbot.ws.Main'
standardInput = System.in
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.11'
}