从Servlet触发时,ProcessBuilder返回eclipse安装目录

时间:2016-06-16 01:24:26

标签: java eclipse processbuilder servlet-3.0

我使用ProcessBuilder来从一个独立的java类中查看当前目录,它正确显示了相关的项目位置。但是当我从servlet触发相同的代码时,它返回了tmy eclipse安装目录的值

任何人都可以帮助我解决这个奇怪的eclipse行为

ProcessBuilder builder = new ProcessBuilder("cmd", "/c", "chdir");
builder.redirectErrorStream(true);
Process p = builder.start();

BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = "";
StringBuffer sb = new StringBuffer();
while((line = br.readLine()) != null){
    System.out.println(line);
}
p.waitFor();

1 个答案:

答案 0 :(得分:0)

得到它.......只是我在动态Web项目中运行上面的代码,它在.metadata文件夹中创建项目的副本,并最终在运行时运行该副本。这就是在eclipse中运行代码的原因,我得到的是项目复制位置的路径而不是原始路径。