Ответ 1
Смешно, я просто работаю над этим: процесс Java, выполняющий другие процессы Java. Я использовал статью От Runtime.exec() до ProcessBuilder в качестве прочной базы и Когда Runtime.exec() не будет служить хорошим советом, как собирать выходные потоки.
PS: Для тех, кому это интересно, я должен был это сделать (вместо появления новых потоков), потому что еще один процесс Java проверяет наличие этих процессов, которые обычно запускаются отдельно с командами оболочки.