Log4j-core is currently an automatic module.
By making it a real module the Java platform can help enforce the distinction between internal and exported classes.
This epic links together tickets related to this goal. I expect that most of the work will be about:
- moving external dependencies out of the core module
- reorganizing packages and classes into internal and exported packages. Other Log4j modules and custom plugins can depend on the exported packages but not the internal ones.
LOG4J2-2234 Clarify which classes in core are internal vs exported