Я совершенно новичок в log4j.Я динамически включаю и выключаю регистрацию, которая работает нормально, но я заметил, что регистратор печатает дважды.Я искал в Интернете решение, и я понял, что это свойство аддитивности, и я установил для него значение false.Мой регистратор является последней статической переменной, и ниже приведен мой файл log4j.xml.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd">
<log4j:configuration debug="true" xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
</layout>
</appender>
<logger additivity="false" name="My package name">
<appender-ref ref="console" />
</logger>
<root>
<level value="ON" />
<appender-ref ref="console"/>
</root>
</log4j:configuration>
И у меня есть несколько файлов Java в пакете, который использует регистратор, и я объявляю его следующим образом:
private static final Logger LOGGER = Logger.getLogger(MyJavaFile.class);
Может кто-нибудь указать на мою ошибку и возможное исправление.Я использовал эту ссылку для создания динамической функциональности.