Невозможно запустить программу, которая выполняет команду терминала Windows 7
.
public class CmdExecutionService {
public static void main(String[] args) {
//should change to "demo" directory
new CmdExecutionService().execute("cd C:\\demo");
}
public String execute(String cmd) {
try {
Process process = Runtime.getRuntime().exec(cmd);
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
return line;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
}
Вывод:
java.io.IOException: Cannot run program "cd": CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at java.lang.Runtime.exec(Runtime.java:620)
at java.lang.Runtime.exec(Runtime.java:450)
at java.lang.Runtime.exec(Runtime.java:347)
at com.example.demo.service.CmdExecutionService.execute(CmdExecutionService.java:18)
at com.example.demo.service.CmdExecutionService.main(CmdExecutionService.java:13)
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 5 more