Java ProcessBuilder和Windows系统变量

时间:2012-12-03 10:00:58

标签: java windows processbuilder

我想用Java在路径中执行一个程序 由自定义系统变量(“CHROME”)定义。

new ProcessBuilder("CHROME").start(); 

Win7的: 工作正常(指向AppData \ Local)

赢得Vista: 什么都不做(指向程序文件)

我需要做什么才能让它与Vista一起运行?

2 个答案:

答案 0 :(得分:2)

如果我理解正确,CHROME是一个系统变量,它包含应用程序的路径。如果是这样,您可以尝试

String path = System.getenv("CHROME");
new ProcessBuilder(path).start(); 

Runtime.getRuntime().exec(path);

答案 1 :(得分:0)

建议在this question中运行cmd.exe中的程序,即

new ProcessBuilder("cmd.exe", "%CHROME%");
只要%CHROME%位于主Java程序传递给子进程的环境中,

就可以正常工作。