Fix Android-related issues in Log4j Core #3071
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This fixes three issues encountered in the
log4j-samples-android
test project:jvmrunargs
lookup on Android and fixes it on the other platforms. Previously, the lookup always returnednull
.BasicContextSelector
on Android.StackLocator
is broken on Android: it cannot use our JDK 8 code (missingsun.reflect
classes), but also it cannot use our JDK 11+ code (missing multi-release JAR support). This causesClassLoaderContextSelector
to use two different logger contexts for the same classloader.ParserConfigurationException
caused by the lack of XInclude capabilities in Android's XML parser. The fix to LOG4J2-3531 didn't cover all the cases.Closes #3056.
Part of #2832.