Меня гуглили по поводу моей проблемы.Но я не мог найти правильный ответ.У меня есть приложение Java maven, и я запускаю внутренний код EXE-файла.Я использовал Runtime.getRuntime().exec
.Это должно быть хорошо.Когда вы создаете JAR-файл и запускаете его, он работает хорошо.Но проблема проявляется, когда вы создаете файл exe
из собственного приложения.
Я хочу создать исполняемый файл из Java-приложения (я использовал Launch4j
) и внутри него выполнить что-то, например запустить другоеEXE-файл.К сожалению, упомянутый код не работает, и я не получил ни одной ошибки.
Process proc = Runtime.getRuntime()
.exec("cmd /c start \"\" \"" + destinationPath + "\\run_service.exe\"");
BufferedReader stdInput = new BufferedReader(new InputStreamReader(proc.getInputStream()));
// Display Errors in logfile
BufferedReader stdError = new BufferedReader(new InputStreamReader(proc.getErrorStream()));
// read the output from the command
logger.info("Here is the standard output of the Process:\n");
String msg = null;
while ((msg = stdInput.readLine()) != null) {
logger.info(msg);
}
// read any errors from the attempted command
logger.info("Here is the standard error of the Process (if any):\n");
while ((msg = stdError.readLine()) != null) {
logger.info(msg);
}
Пожалуйста, дайте мне знать, если кто-то знает об этом больше.