相关疑难解决方法(0)

在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...");
    }
}
Run Code Online (Sandbox Code Playgroud)

这是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 …
Run Code Online (Sandbox Code Playgroud)

java intellij-idea gradle

5
推荐指数
1
解决办法
1861
查看次数

标签 统计

gradle ×1

intellij-idea ×1

java ×1