I started looking at log4j-core in master today with an eye towards creating the module-info.java file. As I went through it I realized we would have to expose almost all of the packages because we have co-mingled private implementations along with public interfaces and abstract class. We really can’t move the public classes as user’s are currently referencing them so I am proposing that we move the private classes. I already started that with LogBuilder by creating a directory named “internal” off of core. Rather than having internal directories all over the place I am thinking we should mimic the same existing package structure under the internal directory and move private classes there.
Thoughts? Ralph