Запись в стандартный вывод ошибок

Java:
Запись в стандартный вывод ошибок

Как это сделать:

Java делает запись в stderr простой с использованием System.err. Взглянем быстро:

public class StderrExample {
    public static void main(String[] args) {
        System.err.println("Ошибка: Что-то пошло не так!");
    }
}

Запуск этого дает вам:

Ошибка: Что-то пошло не так!

Обратите внимание: хотя stdout обычно идет на консоль, stderr может быть перенаправлен в файл или другое место назначения, сохраняя сообщения об ошибках отдельно.

Глубокое погружение

Исторически в системах, подобных Unix, stderr является файловым дескриптором 2, отличным от stdout (файловый дескриптор 1). Это позволяет производить различную обработку и перенаправление. Альтернативы System.err включают в себя фреймворки логирования, такие как Log4J или SLF4J, которые предлагают больше возможностей. В Java stderr реализован в классе System и является экземпляром PrintStream. Он не буферизуется, что означает мгновенный вывод.

Смотрите также