Andrejus Chaliapinas commented on LOG4J2-2266:

Ralph - previously we were discussing ServiceLoader logic introduced for 
purposes of JDK9 side effects under this bug: LOG4J2-2104, which is still open.


According to PowerMock documentation [http://powermock.github.io/:]

"PowerMock uses a custom classloader..."


and current Log4j2 performed changes around ServiceLoader closely related to 
classloading resolution. So my thinking here is that new logic breaks in some 
way visibility of classes within classloaders hierarchy.

If I could put some debug switch while getting this error to generate more logs 
for troubleshooting - please let me know which to set andI'll collect those.


> Log4j2 throws NoClassDefFoundError in Java 8
> --------------------------------------------
>                 Key: LOG4J2-2266
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-2266
>             Project: Log4j 2
>          Issue Type: Bug
>    Affects Versions: 2.10.0
>            Reporter: Andrejus Chaliapinas
>            Priority: Major
> During Unit Tests run using JDK 8 and Log4j2 v2.10.0 - getting this as part 
> of exception stack:
> java.lang.NoClassDefFoundError: Could not initialize class 
>  org.apache.logging.log4j.util.PropertiesUtil
>      at 
> org.apache.logging.log4j.status.StatusLogger.<clinit>(StatusLogger.java:71)
>      at org.apache.logging.log4j.LogManager.<clinit>(LogManager.java:60)
> and issue seems to be somehow related to what is reported so far against JDK 
> 9 here: LOG4J2-2129.
> If some patch on top of v2.10.0 is available to test - please let me know 
> where to download it from.
> While running same UTs with same JDK 8 and v2.8.2 - issue is not observed.
> And question which I have here - why not introduce JDK8 compatibility runtime 
> mode while things with JDK9 are not yet that stable? So it could continue use 
> same logic as of v2.8.2 around that ServiceLoader and not cause side effects.

This message was sent by Atlassian JIRA

Reply via email to