2013-09-24 4 views
0

Попытки использовать образец XML-файл "Образец 1/Log4j конфигурации 2 XML" на странице:log4j2 - Корень содержит недопустимый элемент или атрибут

http://logging.apache.org/log4j/2.x/manual/migration.html

но это дает:

2013-09-25 02:22:59,182 ERROR Root contains an invalid element or attribute "AppenderRef" 

Любые идеи?

Я использую эту зависимость в pom.xml,

<dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-core</artifactId> 
    <version>2.0-beta8</version> 
</dependency> 

и я использую это внутри класса:

private static final Logger logger = LogManager.getLogger(App.class.getName()); 

и я указать конфигурационный файл следующим образом:

java -Dlog4j.configurationFile=log4j2.xml -jar target/project-jar-with-dependencies.jar 
+0

Я не вижу эту ошибку, используя beta9 снимок ... это может быть исправлена ​​ошибка – porfiriopartida

ответ

3

Это ошибка для 2.0-beta8, ее нет на 2.0-beta9

Вот выход, используя beta9

 LOG.debug("Log4j Impl test started..."); 
     LOG.warn(" Log4j Impl test warn..."); 
     LOG.info(" Log4j Impl test info..."); 
     LOG.error(" Log4j Impl test error..."); 
... 
2013-09-24 16:37:39,841 DEBUG [main] Log4jImplTest (Log4jImplTest.java:21) - Log4j Impl test started... 
2013-09-24 16:37:39,843 WARN [main] Log4jImplTest (Log4jImplTest.java:22) - Log4j Impl test warn... 
2013-09-24 16:37:39,843 INFO [main] Log4jImplTest (Log4jImplTest.java:23) - Log4j Impl test info... 
2013-09-24 16:37:39,843 ERROR [main] Log4jImplTest (Log4jImplTest.java:24) - Log4j Impl test error... 

Здесь выход с помощью beta8:

2013-09-24 16:39:28,233 ERROR Root contains an invalid element or attribute "AppenderRef" 
+0

Я пробовал, и да, эта ошибка не появляется в бета-версии. Благодарю. Еще один вопрос, если вы не возражаете: если я не использую переключатель '-Dlog4j.configurationFile = log4j2.xml', он не работает. Где он получает XML-файл? Каково местоположение XML-файла по умолчанию? Если я не укажу его, он игнорирует мой XML-файл. –

+0

Ну, если вы используете maven, он должен находиться в папке с ресурсами, иначе он должен находиться на уровне класса «папка пути класса». Взгляните на: http://logging.apache.org/log4j/2.x/manual/configuration.html – porfiriopartida

+0

Осциллятор, я сказал, он игнорируется. Да, я уже посмотрел на эту веб-страницу. Как-то мой XML-файл игнорируется. Во всяком случае, я буду использовать переключатель командной строки на данный момент. Спасибо. –

Смежные вопросы