Как мы можем перенаправить вывод консоли eclipse в файл? Я могу:
Run Configuration
->Commons
->Select a file
.- Используйте
System.setOut(PrintStream)
иSystem.setErr(PrintStream)
.
Проблема с 1) заключается в том, что мне нужно записывать вывод консоли в разные файлы вместо одного.
Проблема с 2) заключается в том, что он хранит только консольный вывод, сгенерированный System.out.println()
или отслеживание стека созданного исключения. Он не захватывает другие виды выходов, например, предупреждения log4j и т. Д.
Как мы можем перенаправить вывод консоли на разные файлы программно?
${NAME}
), а затем сделает то же самое, что и run. Затем используйте$NAME
в качестве значения для выходного файла. может быть?Ответы:
Перейдите к запуску от имени и выберите
Run Configurations
->,Common
и в Стандартном вводе и выводе вы также можете выбрать файл.источник
echo $TTY
и укажите все, что он возвращает в качестве файла. Затем терминал будет отражать то, что находится в вашей консоли Eclipse.Вы можете использовать «переменную» внутри выходного файла, например:
текущая дата:
Или вы также можете использовать system_property или env_var, чтобы указать что-то динамическое (либо нужно указать в качестве аргумента)
источник
Вы можете установить выход System.out программно, выполнив:
Редактировать:
В связи с тем, что это решение основано на a
PrintStream
, мы можем включить autoFlush, но в соответствии с документами :Так что, если новая строка не написана, не забудьте
System.out.flush()
вручную.(Спасибо Роберт Тупело-Шнек)
источник
System.out.flush()
тем, чтобы не пропустить какой-либо вывод.Для решения проблемы я использую переменную $ {string_prompt}. Показывает диалог ввода при запуске приложения. Я могу установить дату / время вручную в этом диалоговом окне.
Переместить курсор в конец пути к файлу.
Нажмите переменные и выберите string_prompt
Выберите Применить и Выполнить
источник
Мы можем сделать это, установив переменную класса System следующим образом
System.setOut (new PrintStream (новый FileOutputStream («Путь к выходному файлу»))). Также вам необходимо закрыть или очистить переменную 'out' (System.out.close () или System.out.flush ()), чтобы не пропустить какой-либо вывод.
Источник: http://xmodulo.com/how-to-save-console-output-to-file-in-eclipse.html
источник