apache.commons.exec - проглотить исключение, выданное выполненным процессом? - PullRequest
1 голос
/ 14 февраля 2011

Я использую библиотеку Apache commons exec для запуска другого приложения из моего Java-кода в Windows. Это другое приложение ( tshark ) может выдать ужасное исключение, которое заставляет окна всплывать «необработанное исключение win32, возникшее в ...». Есть ли способ проглотить это исключение в моем коде Java, чтобы пользователь не встретил это окно?

1 Ответ

0 голосов
/ 14 февраля 2011

Есть ли какой-нибудь способ проглотить это исключение в моем коде Java, чтобы пользователь не встретил это окно?

Ну, не легко.

Если tshark / wireshark что-то пишет в stderr , когда всплывает окно, от которого вы хотите избавиться, то вы можете destroy () процесс, который вы только чтопорождается, когда вы обнаруживаете любую подходящую строку в stderr (которая полностью избавит от tshark / wireshark, а не только от нежелательного окна).

Все остальное выполнимо, например, автоматическое закрытие ошибкиокно, но это потребует гораздо больше работы (как, например, использование JNA для поиска заголовка окна и закрытие окна исключений tshark / wireshark, от которого вы хотите избавиться).

...