Передача значения appender.file в файл log4j.properties во время выполнения - PullRequest
0 голосов
/ 16 января 2019

Я пытаюсь передать путь для создания файла журнала в.

String logsPath="C:/";
   System.setProperty("logs", logsPath);
  log.debug("Debug");
  log.info("Info");

мой logs.properties файл выглядит так:

log4j.appender.X=org.apache.log4j.FileAppender
log4j.appender.X.File=$(logs)/logs.log

проблема: -программа работаетвсе нормально, без ошибок, но журналы не печатаются.

, пожалуйста, помогите.

1 Ответ

0 голосов
/ 16 января 2019
  1. Причина в том, что log4j быстрее инициализируется, чем строка System.setProperty ("logs", logsPath);.
    Запустите процесс со следующими параметрами: -Dlogs="C:/"
    Пример: java -Dlogs="C:/" MyClass

  2. Заменить $(logs) на ${logs}.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...