ОШИБКА Appenders содержит недопустимый элемент или атрибут "Нет Sql" - PullRequest
0 голосов
/ 07 февраля 2020

Я получаю сообщение об ошибке. Appenders содержит недопустимый элемент или атрибут "Нет Sql", когда я пытаюсь зарегистрировать сообщение через log4j2, используя No Sql appender. Я использовал ниже файл jar в моем classpath log4j-core-2.9.1.jar log4j-api-2.9.1.jar mon go - java -driver-3.5.0.jar log4j-no sql - 2.9.1.jar rpa-apis_1.0.jar xercesImpl-2.9.0.jar disruptor-3.3.7.jar

, когда я запускаю этот проект java с Eclipse, он работает нормально. Но после создания работоспособного jar я получаю сообщение об ошибке, и журнал не попадает в MongoDB. Я использую java -jar ab c .jar для запуска работающего фляги. Я пошел с Google, но не нашел что-то связанное. Предоставление файла с похожим изображением. Пожалуйста, помогите решить проблему. enter image description hereenter image description here enter image description here введите описание изображения здесь enter image description here

Ответы [ 2 ]

0 голосов
/ 08 февраля 2020

Эта ошибка может произойти, когда плагин не может быть найден. Судя по всему, вы создаете uber jar, и либо дескриптор плагина не найден, либо класс плагина не найден. При сборке Uber JAR с Log4j 2.x вам необходимо извлечь файлы Log4j2Plugins.dat, которые присутствуют в каждом jar. Это [Stackoverflow question][1] предоставляет решение для этого. Вы также можете попробовать Log4j2 3.0.0-SNAPSHOT. Он упаковывает дескрипторы плагинов в классы, которые расположены с использованием java .util.ServiceLoader. Пока процесс затенения поддерживает объединение нескольких реализаций службы, он должен работать нормально.

Это также должно быть очевидно, но также должны быть включены соответствующие файлы jar для поддержки no sql и mongodb appender. ,

0 голосов
/ 08 февраля 2020

Эта ошибка может произойти, когда плагин не может быть найден. Из звука вещей вы строите супер банку. При сборке Uber JAR с Log4j 2.x вам необходимо извлечь файлы Log4j2Plugins.dat, которые присутствуют в каждом jar. Это [Stackoverflow question][1] предоставляет решение для этого. Вы также можете попробовать Log4j2 3.0.0-SNAPSHOT. Он упаковывает дескрипторы плагинов в классы, которые расположены с использованием java .util.ServiceLoader. Пока процесс затенения поддерживает объединение нескольких реализаций службы, он должен работать нормально.

...