Переменные среды установлены для обеспечения доступа к инструментам командной строки и для более легкого взаимодействия других инструментов с SDK. Например, в Java в Windows, если переменная окружения не задана в переменной PATH, запуск javac намного более громоздкий, поскольку вам нужно каждый раз вводить полный путь к команде:
C:> \jdk<version>\bin\javac MyClass.java
В настройках Java переменные среды не требуются; это просто проще Другие языки могут быть более строгими, хотя я не видел конкретных примеров, которые мог бы привести. Вы можете прочитать статью Как установить системную переменную Path? , чтобы узнать, как это сделать.
Установщик Java не изменяет переменную пути, но другие инструменты делают это (например, Microsoft). Я предполагаю, что это дизайнерское решение со стороны Sun / Oracle, а не какое-то конкретное техническое ограничение.