Страницы

Поиск по вопросам

вторник, 18 февраля 2020 г.

Вывод сообщения в консоль Windows при некорректном количестве параметров

#java #командная_строка


Есть следующая проблема: не выводится текст в консоль.
Есть некоторое приложение, которое обрабатывает исходный текстовый файл, выводит
результат во второй и принимает на вход 4 аргумента:

input.txt output.txt -k -u


где k и u - какие-то параметры запуска.
В целом, запуск приложения в консоли выглядит следующим образом:

program.exe input.txt output.txt -k -u


При правильном количестве параметров программа отрабатывает корректно. Но если, к
примеру, количество параметров меньше 4, то программа должна сообщить об этом и завершить
свою работу. Программа завершается, но текст в консоль не выводится.   

public static void main(String[] args) {
    ...
    if (args.length != 4) {
        System.out.println("Invalid format");
        return; 
    }
    ...
}




Первый запуск отработал как надо. Второй должен был вывести сообщение об ошибке.
Почему сообщение не выводится?
    


Ответы

Ответ 1



Запускайте программу с использованием java -jar: java -jar program.jar arg1 arg2 arg3 В этом случае в консоли появится: Invalid format

Ответ 2



Все легко. Просто используйте команду полного выхода, который есть в классе System. public static void main(String[] args) { ... if (args.length != 4) { System.out.println("Invalid format"); System.exit(0); // Та самая команда } ...

Комментариев нет:

Отправить комментарий