Определение местоположения исполняемого файла JVM во время выполнения
Как получить местоположение исполняемого файла запущенной в данный момент JVM во время выполнения? Я хотел бы создать другую JVM как подпроцесс, используя класс ProcessBuilder.
Я знаю, что естьjava.home
Системное свойство, но это не определяет местоположение исполняемого файла JVM. Я понимаю, что мог бы сделать что-то вроде этого, чтобы получить путь:
System.getProperties().getProperty("java.home") + File.pathSeparator + "bin" + File.pathSeparator + "java"
Этот код не зависит от платформы, потому что имя исполняемого файла Windowsjava.exe
неjava
, Есть ли способ получить путь к исполняемому файлу JVM, который учитывает особенности платформы?