Так я объявил переменную
final static Logger logger = Logger.getLogger(MainController.class);
мой web.xml
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/log4j.properties</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
мой log4j.properties
# Root logger option
log4j.rootLogger=INFO, file, stdout
# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=logs/BMDashboard.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
Файл журналов создается, но мои журналы (с logger.debug () и info ()) не печатаются в файле журналов. Системные журналы распечатываются автоматически.
Переменная регистратора имеет значение NULL.
но когда я напечатал System.out.println(Logger.getLogger(MainController.class));, я получил org.apache.log4j.Logger@f7e9ad25
помогите мне в этом, спасибо
Я проверил с помощью отладчика, он нулевой
Logger.getLogger никогда не вернет null. Просто не может быть, чтобы это был null.
@BoristheSpider, я добавил скриншот, пожалуйста, посмотрите
А у вас есть NullPointerException?
нет. Я не получаю исключение нулевого указателя.
Ну тогда это не может быть null, не так ли?
хорошо, я понял, о чем вы говорите. Тогда что здесь означает ноль? и как мне заставить мой код работать?
@BoristheSpider, я снова обновил вопрос, пожалуйста, посмотрите




loggerне может бытьnull- проверьте отладчиком.