我知道使用下面的方法,我们可以添加。
private void setPgPasswordEnv(String pwdValue){
ProcessBuilder pb = new ProcessBuilder("CMD", "/C", "SET");
Map<String, String> envMap = pb.environment();
envMap.put("PGPASSWORD", pwdValue);
}
如果我们在上面添加使用,它将持续到我的应用程序运行吗?有没有从Java添加env变量的最佳方法?
CMD
时,它将适用于运行pb.start()
程序的新进程。它不会影响正在运行的Java程序,也不会影响任何其他ProcessBuilder
,因为每个ProcessBuilder
都有自己的环境变量副本,可以为新进程设置环境变量。
如
文档中的[[充分解释,即environment()
的Javadoc。