Попытка запустить файл .bat в другом каталоге с Java - PullRequest
0 голосов
/ 19 марта 2019

Я пытаюсь запустить командный файл с помощью Process Builder. Пакетный файл находится в другом каталоге

String filepath = "D:";
        String filename = "hello.bat";
        try {
            ProcessBuilder p = new ProcessBuilder();
            p.directory(new File(filepath));
            p.command("cmd.exe", "/c ", filename);
            Process process = p.start();
            process.waitFor();
            InputStream in = process.getInputStream();
            ByteArrayOutputStream baos = new ByteArrayOutputStream();

            int c = -1;
            while((c = in.read()) != -1)
            {
                baos.write(c);
            }

            String response = new String(baos.toByteArray());
            System.out.println("Response From Exe : "+response);

Не выдается никаких исключений, и кажется, что он застревает в Process process = p.start();на неопределенный срок.Кроме того, сам пакетный файл не выполняется, что может быть проблема здесь ??[Я пробовал также запустить Runtime # exec и Desktop #, но безрезультатно]

1 Ответ

0 голосов
/ 19 марта 2019

Концепция будет похожа на это: Spring boot application.properties конфликтует, когда одно приложение развертывает другое

Там я предоставил довольно полный набор кода.

...