2015-06-05 3 views
0

Я работаю над многоплатформенным графическим интерфейсом для проекта. GUI должен иметь функциональные возможности для запуска и остановки другого .jar-файла с помощью кнопок.Запуск и остановка java-процесса от JAR Fil

GUI кодируется в Java и скомпилирован как исполняемый файл Jar.

Например.

При запуске запуска JButton запускается файл project_release.jar.

Когда нажата кнопка JButton stop, файл project_release.jar завершается и закрывается.

Как это можно достичь, чтобы он работал на всех операционных системах?

Я посмотрел на процесс-строитель, время выполнения и прочее, но я не уверен, что он будет работать на нескольких ОС.

Благодарим за помощь.

ответ

0

Runtime.getRuntime(). Exec() или ProcessBuilder() должны работать нормально для этого, хотя вам нужно знать, где исполняемый файл java находится на вашей платформе. Если Java исполняемый в PATH тогда это будет работать кроссплатформенность:

Process proc = Runtime.getRuntime().exec("java -jar project_release.jar"); 

Чтобы убить его можно использовать сокет-соединение между программами и отправить сообщение о том, что другой должен прекратить. Если что-то пойдет не так, а другая программа игнорирует сообщение, вы можете использовать это:

proc.destroy(); 

, но она может прервать другую программу в середине что-то важное.

+0

Как это работает для двух разных кнопок, потому что я не могу сделать «Process = null;», а затем использовать его в ситуации try catch для кнопки 1, чтобы запустить программу, а затем снова использовать proc.destroy(); для завершения программы. –

+0

Я не понимаю ваш вопрос. Ты это пробовал? С какими особенностями вы сталкиваетесь? –

 Смежные вопросы

  • Нет связанных вопросов^_^