Существует только один способ создания процессов на Java, Runtime.exec()
- в основном он позволяет запускать новый JVM точно так же, как и через интерфейс командной строки.
Думаю, ты знаешь, как создать новый процесс. Если нет, см. здесь или здесь .
Теперь Вам нужно запустить java.exe
с Вашим текущим класс-спатом. Вы можете найти этот путь в свойстве System java.class.path
. Чтобы найти java.exe
, посмотрите в new File( System.getProperty("java.home"), "bin")
.
Если у вас возникли проблемы с этим подходом, я предлагаю написать скрипт-обертку и вызвать его с достаточным количеством аргументов, чтобы код в main()
мог решить, к какому реальному классу обратиться.
Может быть, java.lang.Process мог бы помочь здесь ...
Методы
ProcessBuilder.start()
иRuntime.exec
создают собственный процесс и возвращают экземпляр подкласса Process, который может быть использован для управления процессом и получения информации о нем. Класс Process предоставляет методы для выполнения входных данных процесса, выполнения вывода в процесс, ожидания завершения процесса, проверки состояния выхода процесса и уничтожения (уничтожения) процесса.