Logger.getLogger генерирует индекс за пределы исключенияJAVA

Программисты JAVA общаются здесь
Anonymous
Logger.getLogger генерирует индекс за пределы исключения

Сообщение Anonymous »

Я использую log4j2 с 1,2 API. Я только что обновил ActiveMQ с 5,16 до 5,18 и решил проблемы с отдельными файлами JAR. Перед обновлением регистрация работала должным образом.
(в ответ на комментарий: в приложении использовалось Activemq-All 5.16.3 и I обновил его для использования ActiveMQ-Client-5.18.6 и jakarta.jms-api 2.0.3 . log4j-1.2-api )
Конфигурация моего приложения использует line log4j.configuration = $ {cfg_dir} /log4j.properties , где $ {cfg_dir} является директором файла конфигурации приложения. Это не изменилось.

Код: Выделить всё

log4j.rootLogger=WARN,defaultAppender
log4j.appender.defaultAppender=org.apache.log4j.RollingFileAppender
log4j.appender.defaultAppender.MaxFileSize=20MB
log4j.appender.defaultAppender.MaxBackupIndex=25
log4j.appender.defaultAppenderlayout=org.apache.log4j.PatternLayout
log4j.appender.defaultAppender.layout.ConversionPattern=[%d{yy-MM-dd HH:mm:ss.SSS}] %20C{3}:%L [%-6.6p] => %m%n
log4j.appender.defaultAppender.append=true
Когда приложение запускается, оно генерирует ошибку, почти идентичную этому вопросу без ответа:
https://community.splunk.com/t5/splunk- ... p/681421-я сделал точность идентичных, и идентичные, и идентичные, и идентичные, и идентичные, и подтверждают, и подтверждают, что идентификационные, и подтверждают, и подтверждают, что идентификационные, и подтверждают это и идентично, и идентичные, и подтверждают, что идентичная, и подтверждает, что идентификационные части и идентичные. трассировка: < /p>

Код: Выделить всё

java.lang.StringIndexOutOfBoundsException: begin 0, end -1, length 9
at java.base/java.lang.String.checkBoundsBeginEnd(String.java:3319)
at java.base/java.lang.String.substring(String.java:1874)
at org.apache.logging.log4j.util.PropertiesUtil.partitionOnCommonPrefixes(PropertiesUtil.java:555)
at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.build(PropertiesConfigurationBuilder.java:156)
at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationFactory.getConfiguration(PropertiesConfigurationFactory.java:56)
at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationFactory.getConfiguration(PropertiesConfigurationFactory.java:35)
at org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:557)
at org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:481)
at org.apache.logging.log4j.core.config.ConfigurationFactory.getConfiguration(ConfigurationFactory.java:323)
at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:695)
at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:716)
at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:270)
at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:155)
at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:47)
< /code>
, а затем мой стек вызовов продолжается: < /p>
at org.apache.logging.log4j.LogManager.getContext(LogManager.java:309)
at org.apache.log4j.Logger$PrivateManager.getContext(Logger.java:59)
at org.apache.log4j.Logger.getLogger(Logger.java:59)
at com.foo.main.Bar.(Bar.java:100)
at com.foo.main.Bar.main(Bar.java:24601)
Соответствующая строка в моем файле bar.java is:

Код: Выделить всё

private Logger logger = Logger.getLogger(Bar.class);
Я попытался передавать имя класса в качестве жесткой строки, но это получило то же исключение. Но так как я больше не использую ActiveMQ-All этот файл по умолчанию не найден.

Подробнее здесь: https://stackoverflow.com/questions/794 ... -exception

Вернуться в «JAVA»