Details
-
Sub-task
-
Status: Open
-
Critical
-
Resolution: Unresolved
-
None
-
None
-
None
Description
Today, anyone can simply call Configuration.setClassLoader() to set the configuration classloader to any arbitrary classloader. This classloader is then used to get a class or a resource through Configuration (getClass() and getResource()).
In essence, the Configuration classloader is effectively a globally shared classloader without contract. This is one step worse than TCCL in that regard.
I propose to remove/deprecate setClassLoader() and getClassLoader() and simply use TCCL (and then the classloader that loaded the Configuration class) to load classes and resources.