扫描仪输入是不可见的

时间:2017-08-17 12:47:04

标签: java debian java.util.scanner invisible

我的Java扫描程序有问题。我的问题是,我目前正在为Minecraft编写一个CloudSystem,我编写了一个Master和一个Wrapper。在Wrapper上,扫描仪工作得很好,但在Master上没有。问题是,在Master上,我在控制台中写入的输入没有显示,我必须按两次Enter,所以Scanner获取输入。代码在Wrapper和Master上完全相同,只需对开关盒进行一些编辑。它有点奇怪,它适用于Windows但不适用于Debian。

这是我的代码:

public static void startScreen() {
    System.out.println(AnsiColor.GREEN + "Was moechtest du tun?");
    while (true) {
        String action = new Scanner(System.in).nextLine();
        switch (action) {
            case "close":
                WebSocketServer.group.shutdownGracefully();
                shutdownServers();
                bcprocesse.destroy();
                System.exit(0);
                break;
            case "creategroup":
                createGroup();
                break;
            case "groups":
                Group.list();
                break;
            case "users":
                User.list();
                break;
            case "deletegroup":
                deleteGroup();
                break;
            case "help":
                help();
                break;
            case "createuser":
                createUser();
                break;
            case "deleteuser":
                deleteUser();
                break;
            case "request":
                System.out.println(AnsiColor.GREEN + "Welche Gruppe willst du benutzen? Es gibt: " + Group.getGroupsAsList().toArray().toString() + "\n");
                requestServer(new Scanner(System.in).nextLine());
        }
    }
}

我希望有人可以帮助我。

P.S。对不起任何事情,我来自德国。

1 个答案:

答案 0 :(得分:0)

修复了该问题...我的问题是我之前已经启动了Netty Server,因此我忘记在一个新线程中启动它,因此它不会阻塞主线程...糟糕!我希望我可以帮助其他开发人员,因为有时..您只是不考虑这种情况。