Установка кодов System.exit по умолчанию в Java? - PullRequest
2 голосов
/ 29 января 2010

У меня есть приложение C #, которое запускает файл jar и использует код System.exit в качестве возвращаемого значения. Окно консоли отображается как часть этого jar-файла, и если пользователь закрывает его (тем самым заканчивая jar-файл), он возвращает код выхода 143. Проблема в том, что 143 (или любое положительное целое число) может быть допустимым кодом выхода, если jar завершится успешно.

Мне нужен способ вручную установить для кода System.exit отрицательное целое число. Об трактовке 143 как об исключении в приложении C # не может быть и речи.

Ответы [ 2 ]

2 голосов
/ 29 января 2010

Как у Диего Диаса ответ ,

Аргумент служит кодом состояния; условно, ненулевой код состояния указывает на ненормальное завершение.

Если вы действительно хотите игнорировать это, и приложения Java и C # находятся в ваших руках, простой обходной путь - добавить 1000 к вашему возвращаемому значению System.exit в Java после завершения работы jar.

Ваше приложение C # распознает успешное выполнение по коду возврата >= 1000 и вычтет его снова. 143 ниже 1000 и, следовательно, ошибка.

1 голос
/ 29 января 2010

В соответствии с java документацией вы можете использовать System.exit (int n), поэтому просто положите отрицательное число в качестве параметра, также по соглашению, ненулевой код состояния указывает на аварийное завершение.

...