Короткий ответ на ваш вопрос заключается в том, что log4j не поддерживает DI.
Метод Log4jConfigurer.initLogging()
имеет возвращаемое значение void, поэтому вводить нечего. Идея состоит в том, что вы вызываете этот метод, который загружает log4j, а затем вы используете API Log4j как обычно (используя Logger.getLogger(getClass())
).
Как правило, вы не настроите Log4jConfigurer
как bean-компонент Spring, однако, чаще вы вызываете его непосредственно из собственного кода во время запуска приложения.
Если это веб-приложение, то Spring предоставляет альтернативы Log4jConfigurer
, которые лучше подходят для этой среды (Log4jWebConfigurer
, Log4jConfigListener
).
Кстати, 2 года назад я подал запрос функции , чтобы разрешить автоматическое подключение регистраторов, и он наконец был помечен как исправление для Spring 3.1. Horray.