psexec进程没有在java中设置:“找不到指定的文件”

时间:2018-04-04 18:48:03

标签: java filenotfoundexception psexec

我正在尝试运行一些代码,但是我收到了一个错误:

String strCmd = "psexec.exe \\server -u use -p aaa  tasklist";
Process process  = Runtime.getRuntime().exec(strCmd);
BufferedReader stdout = null;
stdout = new BufferedReader(new InputStreamReader(process.getInputStream())); 
String line;

for(int l = 0; ( line = stdout.readLine()) != null; )
{     
    System.out.println ("output ->"+line);  
} 
stdout.close(); 
BufferedReader stdErr = new BufferedReader(new InputStreamReader(process.getErrorStream())); 
for(int l = 0; (line = stdErr.readLine()) != null; ) 
{  
    System.out.println ("Error Output ->"+line);     
} 
stdErr.close();   

现在我面临这个错误:

  

线程“main”中的异常java.io.IOException:
  无法运行程序“psexec.exe”:
  CreateProcess error = 2,系统找不到指定的文件

需要更改什么才能使此代码正常工作?

1 个答案:

答案 0 :(得分:2)

程序psexec.exe不在java进程的PATH变量中。

尝试使用完整路径启动.exe文件,或者将psexec.exe所在的目录添加到PATH环境变量中。