Я пытался закодировать приложение, которое позволяет мне открывать несколько сеансов консоли (в окнах, которые будут cmd.exe) в режиме вкладок.
Одна из наиболее важных ссылок, которые я нашел, находится в следующем URL-адресе, где я смог получить код TextAreaOutputStream, чтобы иметь возможность читать STDOUT из процесса, но это и большинство ссылок в Интернете не решает/исправляет вопрос, которым я занимаюсь.
Ссылка: Создание консоли Java внутри Панель графического интерфейса
Даже когда перенаправление STDOUT, STDERR и STDIN вызвало у меня некоторые проблемы, худшая часть возникает, когда команда, которую вы вводите в консоли Java на одной из вкладок, выполняет команду, которая создает дочерний процесс, именно здесь мои Java-приложения теряют контроль, потому что в фоновом режиме был создан новый процесс. По сути, новый дочерний процесс выходит за рамки, и я не могу получить или отправить ему какие-либо байты, и мое приложение зависает.
- JVM
- MyTabbedConsoleApp
- cmd.exe /k (I can still communicate with this one, no problems until here)
- apptrack.exe (a child process out of bound from my app, no communication with this, the app hangs)
- cmd.exe /k (I can still communicate with this one, no problems until here)
- MyTabbedConsoleApp
Я ищу лучший способ создать приложение, которое в значительной степени имитирует среду консоли.