通过bash脚本将参数传递给正在运行的后台Java进程

时间:2018-12-05 09:29:32

标签: java linux bash

我有一个Java应用程序在while循环中使用switch-case执行命令。我如何通过bash脚本将参数传递给正在运行的后台Java进程?我不想使用套接字或webUI传递数据。这是我的代码:

    public static void main(String[] args) throws IOException {
    boolean eof = false;
    Scanner sc = new Scanner(System.in);
    while (!eof) {
        System.out.println("Enter your command!");
          String data = sc.useDelimiter("\\<end>").next();
        CommandField cmdF = gson.fromJson(data, CommandField.class);
        switch (Command.Parse(cmdF.getCommand())) {
            case LOGIN:
                result = client.isLogged();
                if (result) {
                    System.out.println("successful!");
                } else {
                    System.out.println("failed!");
                }
                break;
        }

}

1 个答案:

答案 0 :(得分:0)

您只能通过专用接口将变量传递给正在运行的进程。我想到以下选项:

但是您要将参数传递给的程序必须提供接口的实现。否则,如果进程无权接收某些东西,则无法传递任何东西。