在Java 6中,使用继承的stdin/stdout/stderr启动进程可以通过以下步骤实现:
Thread
,并重写run()
方法:class ProcessThread extends Thread {
private Process process;
public ProcessThread(Process process) {
this.process = process;
}
public void run() {
try {
BufferedReader input = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = input.readLine()) != null) {
System.out.println(line);
}
input.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}ProcessBuilder
对象,并设置需要执行的命令:ProcessBuilder processBuilder = new ProcessBuilder("your_command", "your_arguments");start()
方法启动进程,并创建一个ProcessThread
对象,将进程传递给它:try {
Process process = processBuilder.start();
ProcessThread processThread = new ProcessThread(process);
processThread.start();
} catch (IOException e) {
e.printStackTrace();
}这样,就可以在Java 6中使用继承的stdin/stdout/stderr启动进程了。需要注意的是,在实际使用中,需要根据具体情况进行错误处理和异常捕获。
领取专属 10元无门槛券
手把手带您无忧上云