1

可能重复:
System.Console() 返回 null

代码:

public class Demo {

public static void main(String[] args){
    Console c = System.console();
    if (c == null) {
        System.err.println("No console.");
        System.exit(1);
    }else {
        System.out.println("Console is.");
        System.exit(0);
    }
}

}

总是没有控制台。为什么 ?怎么修?谢谢。

4

1 回答 1

6

您没有关联任何控制台。

根据javadoc

返回与当前 Java 虚拟机关联的唯一 Console 对象,如果有,否则为 null

编辑:

控制台 javadoc

虚拟机是否具有控制台取决于底层平台以及调用虚拟机的方式。如果虚拟机从交互式命令行启动而不重定向标准输入和输出流,那么它的控制台将存在,并且通常会连接到启动虚拟机的键盘和显示器。如果虚拟机是自动启动的,例如通过后台作业调度程序,那么它通常不会有控制台。

于 2012-11-16T19:39:20.327 回答