Отключить System.err

Есть ли способ установить поток System.err, чтобы все написанное на него игнорировалось? (т.е. отбрасывается не выводится)

Ответы

Ответ 1

System.setErr(new PrintStream(new OutputStream() {
    public void write(int b) {
    }
}));

Ответ 2

Вы можете использовать System.setErr(), чтобы дать ему PrintStream, который ничего не делает.

См. пример @dogbane для кода.

Ответ 3

Просто установите Ошибка для реализации dommy:

System.setErr(new PrintStream(new OutputStream() {
            @Override
            public void write(int arg0) throws IOException {
                // keep empty
            }
        }));

Для этого вам нужно специальное разрешение.

RuntimePermission("setIO")

Ответ 4

Вы можете перенаправить поток err на /dev/null

OutputStream output = new FileOutputStream("/dev/null");
PrintStream nullOut = new PrintStream(output);
System.setErr(nullOut);