Как я могу запустить Java из командного файла Windows, но скрыть командное окно? - PullRequest
6 голосов
/ 26 января 2012

У меня есть файл .bat, включающий эту команду java -jar example.jar, которая запускает example.jar.

Я не хочу, чтобы cmd.exe был виден на экране во время выполнения файла. Это возможно?

Ответы [ 5 ]

7 голосов
/ 26 января 2012

Используйте javaw.exe вместо java.exe, это должно сбросить оболочку

5 голосов
/ 10 июля 2015

Вы можете скрыть это так:

start javaw -jar example.jar

Или, если вы звоните изнутри другого проекта, вы можете позвонить так:

try {
        Process p = Runtime.getRuntime().exec("cmd /c start /B example.bat");
        p.waitFor();
    } catch (InterruptedException ex) {
        Logger.getLogger(OpenFileFromCmd.class.getName()).log(Level.SEVERE, null, ex);
    } catch (IOException ex) {
        Logger.getLogger(OpenFileFromCmd.class.getName()).log(Level.SEVERE, null, ex);
    }

Если у вас есть какие-либо вопросы, просто спросите меня:))

2 голосов
/ 20 августа 2013

Runtime.getRuntime (). Exec ("cmd / c start / B example.bat");

2 голосов
/ 30 января 2012

Запустите файл bat с помощью команды windows "start"

Start "" /B "c:\myFolder\MyJavaLauncher.bat"

Опция "/ B" указывает запустить программу, не показывая типичное окно команд.

1 голос
/ 31 октября 2016
try {
        String[] command = {"cmd.exe", "/C", "Start /B" , "C:\\path\\urbatname.bat"};
        Process p =  Runtime.getRuntime().exec(command);           
    } catch (Exception ex) {
        ex.printStackTrace();
    }

/ B позволяет вам выполнять пакетный файл незаметно. Просто используйте приведенные выше коды в вашей функции, и она будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...