0

想从我的 java 应用程序中添加“PGPASSWORD”环境变量。

我知道使用以下方式,我们可以添加。

私人无效 setPgPasswordEnv(字符串 pwdValue){

    ProcessBuilder pb = new ProcessBuilder("CMD", "/C", "SET");

    Map<String, String> envMap = pb.environment();

    envMap.put("PGPASSWORD", pwdValue);
} 

如果我们在上面添加使用,它会一直持续到我的应用程序运行吗?

有没有从java添加环境变量的最佳方法?

4

1 回答 1

1

如果您执行该代码,它适用于运行程序的新进程CMD,当您随后调用pb.start().

它不会影响正在运行的 Java 程序,也不会影响任何其他程序ProcessBuilder,因为每个程序ProcessBuilder都有自己的环境变量副本来为新进程设置。

正如文档中充分解释的那样,即.environment()

于 2020-04-09T07:34:10.853 回答