Этот вопрос является широким (не кратким), но несколько советов:
Вы можете выполнить внешний процесс, используя
Process p = Runtime.getRuntime().exec("...").
Полученный вами процесс представляет собой запущенный внешний процессможно получить его ввод и вывод с помощью:
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
PrintWriter pw = new PrintWriter(p.getOutputStream());
С помощью br
вы можете читать вывод процесса построчно и добавлять его к JTextArea
.С помощью pw
вы можете печатать на вход процесса, чтобы передать некоторые данные.
Вы должны использовать поток для непрерывного чтения из процесса и добавления данных в текстовую область.Данные должны интерпретироваться пользователем, и когда он / она считает, что процесс требует некоторого ввода, следует записать его в текстовую область и нажать кнопку (например), а затем вы прочитаете текстовую область и запишите данные в pw
.