【问题标题】:How to use a batch file as Java console?如何使用批处理文件作为 Java 控制台?
【发布时间】:2013-11-22 14:04:02
【问题描述】:

如何将批处理文件用作接受输入的 Java 控制台?我用几个命令制作了一个测试应用程序,并在批处理文件中使用这一行运行 jar 文件:

java -cp console.jar test.Main

当我尝试在批处理窗口中键入内容时,它会关闭。正确的做法是什么?

这是我的主要方法。我使用 Scanner 来获取用户输入。

public static void main(String[] args) {
    scanner = new Scanner(System.in);

    String line = scanner.nextLine();

    if (line.startsWith("--")) {
        String[] command = line.split("--");
        new Command(command[1]);
    }
}

提前致谢。

【问题讨论】:

  • 如果那是真正的程序:当然它会关闭。它创建一个新的Command 实例,然后什么也不做。所以程序终止。你还期待什么?

标签: java windows batch-file console


【解决方案1】:

您可以在批处理文件的末尾写上pause,这样它就不会自动关闭。然后你就可以看到你的程序的输出了。

终端将在完成分配给它的工作后关闭。

仔细查看您的代码后,您会发现您希望不断接受输入并基于该输入运行命令。在这种情况下,你想要:

String line = scanner.nextLine();

while(line != null && !line.equals(""))
{
    if (line.startsWith("--")) {
        String[] command = line.split("--");
        new Command(command[1]);
    }
    line = scanner.nextLine();
}

【讨论】:

  • 我已经尝试过了,但问题不是自动关闭,每当我尝试输入内容时都会关闭,当我尝试在 Eclipse 中运行它时似乎是一样的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-14
  • 2021-01-09
相关资源
最近更新 更多