Подробнее о Windows ... переменная java.home не всегда находится в том же месте, что и исполняемый файл.
Как говорит Denis The Menace, установщик помещает Java-файлы в Program Files , а также java.exe в System32 . Ява- версия не имеет ничего общего с Java по пути . Однако, когда программа PeterMmm запускается, она сообщает значение Program Files как java.home , это не так (Java там установлен), но фактический исполняемый файл находится в System32 .
Один из способов поиска местоположения двоичного файла java.exe , добавьте следующую строку в код PeterMmm, чтобы программа продолжала работать еще дольше:
try{Thread.sleep(60000);}catch(Exception e) {}
Скомпилируйте и запустите его, затем найдите местоположение образа java.exe . Например, в Windows 7 откройте диспетчер задач, найдите запись java.exe , щелкните правой кнопкой мыши и выберите «открыть файл», это откроет точное местоположение двоичного файла Java. В этом случае это будет System32 .