Бродя по интернету, похоже, что это возможно сделать с JNI. Затем вам нужно будет вызвать функцию putenv () из C, и вам (предположительно) придется сделать это так, чтобы это работало как в Windows, так и в UNIX.
Если все, что можно сделать, для самой Java, конечно, не составит большого труда поддержать это, вместо того, чтобы поставить меня в смирительную рубашку.
Друг на другом языке, говорящий на Perl, полагает, что это потому, что переменные среды являются глобальными процессами, а Java стремится к хорошей изоляции для хорошего дизайна.