目前我正在尝试制作自己的 GDB 前端。到目前为止,一切都在顺利进行,除了一部分。管道输入到过程中,一旦它被打开。我将在下面的代码中包含一个示例:
private JButton run = new JButton("Run");
JToolBar vertical = new JToolBar(JToolBar.VERTICAL);
vertical.add(run);
add(vertical, BorderLayout.WEST);
run.addActionListener(new ActionListner()
{
public void actionPerformed(ActionEvent arg0)
{
Process proc;
proc = Runtime.getRuntime().exec("gdb");
proc = Runtime.getRuntime().exec("r");
}
}
这将允许我运行命令“gdb”并将其所有输出通过管道传输到我的 TextArea,但在那之后,该进程关闭并且我不能再对同一进程运行诸如“r”之类的命令,而是打开另一个一个并尝试自己执行命令“r”;那么我有什么办法可以在同一个过程中执行这些吗?另外,因为这将是一个 GUI,我需要多个按钮能够与同一个进程交互,即按钮“运行”需要能够执行“r”,而“断点”按钮需要对同一个进程执行'b',这可能吗?
TL;DR:需要通过使用 GUI 从 Java 中的同一进程运行多个系统命令,这可能吗?