Uploaded image for project: 'Log4j 2'
  1. Log4j 2
  2. LOG4J2-2308

EnvironmentPropertySource not a subtype regression

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • 2.10.0, 2.11.0
    • None
    • None
    • Linux, JDK 8

    Description

      Started seeing this error when code on the classpath uses SLF4j, while I'm using Log4j as the logger. 

      I'm triggering this particular instance, while trying to run  maven embedded build using MavenCLI from the maven-embedder project.

      Essentially, its running maven inside a different classloader for isolation...

      Caused by: java.util.ServiceConfigurationError: org.apache.logging.log4j.util.PropertySource: Provider org.apache.logging.log4j.util.EnvironmentPropertySource not a subtype
          at java.util.ServiceLoader.fail(ServiceLoader.java:239) ~[?:1.8.0_152]
          at java.util.ServiceLoader.access$300(ServiceLoader.java:185) ~[?:1.8.0_152]
          at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376) ~[?:1.8.0_152]
          at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404) ~[?:1.8.0_152]
          at java.util.ServiceLoader$1.next(ServiceLoader.java:480) ~[?:1.8.0_152]
          at org.apache.logging.log4j.util.PropertiesUtil$Environment.<init>(PropertiesUtil.java:319) ~[log4j-api-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.util.PropertiesUtil$Environment.<init>(PropertiesUtil.java:310) ~[log4j-api-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.util.PropertiesUtil.<init>(PropertiesUtil.java:59) ~[log4j-api-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.appender.ConsoleAppender$Target.getCharset(ConsoleAppender.java:92) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.appender.ConsoleAppender$Target$1.getDefaultCharset(ConsoleAppender.java:76) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.appender.ConsoleAppender$Builder.build(ConsoleAppender.java:225) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.appender.ConsoleAppender$Builder.build(ConsoleAppender.java:192) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:122) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:958) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:898) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:890) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:513) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:237) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:249) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:545) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:617) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:634) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:229) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45) ~[log4j-core-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194) ~[log4j-api-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:122) ~[log4j-api-2.10.0.jar:2.10.0]
          at org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:43) ~[log4j-slf4j-impl-2.10.0.jar:2.10.0]
          at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:46) ~[log4j-api-2.10.0.jar:2.10.0]
          at org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:29) ~[log4j-slf4j-impl-2.10.0.jar:2.10.0]
          at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:358) ~[slf4j-api-1.7.25.jar:1.7.25]
          at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:383) ~[slf4j-api-1.7.25.jar:1.7.25]

      This seems to be a regression in recent versions of maven - not sure if related to 2152, or other bugs that mention similar stack traces - but usually in connection with tomcat.

       

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              armbrust Dan Armbrust
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: