Runtime.getRuntime().exec在一般的console或者webapp中运行exe就可以,但运行bat就不行,为什么?如何处理?
还有,如何在webapp中获取当前的系统环境变量?谢!!!!!!!!!!!!

解决方案 »

  1.   

    可以运行*.bat@echo off
    echo Hello > a.txt  试一下
    环境变量
    Runtime.getRuntime().exec("cmd /c set>temp.env");
      

  2.   

    Runtime.getRuntime().exec("cmd /c xxx.bat");
    这样直接执行
      

  3.   

    不行啊:不能运行bat,我不清楚bat是否真的在运行,但我的bat里有写文件的操作(里面调用了一个java程序),在cmd下运行的时候,文件正常被写入,但在webapp里则没有!我跟踪,可以看到那个process被启动了。 真是奇怪!!!那个读环境变量的办法,是可行的,不过先写到文件里,再读出来,总感觉不是太方便,而且输出的环境变量有一些appserver启动时使用的,如:_RUNJAVA="C:\j2sdk1.4.2_05\bin\java"之类,有可能appserver在启动时会覆盖掉系统“真正的”环境变量。还有什么好办法吗?难道就没有相关的函数可以直接获取的?