Debe capturar stdout y stderr en subprocesos separados (para evitar el bloqueo) y generar esto a medida que lo obtiene, mientras espera que se complete el proceso .
Tenga en cuenta que es posible que deba leer tanto stdout como estándar O su salida puede ir al archivo de registro configurado en su lugar.
Consulte esta respuesta
para obtener más información y referencias al código de ejemplo. Consulte también este artículo , que analiza los errores comunes al usar Runtime.exec()