Replacement System Classloader for Classes In Jars containing Jars

Though this is an old question, there is indeed a way to replace the system ClassLoader.
You might get more than you bargained for, however, with reflection.

        Field scl = ClassLoader.class.getDeclaredField("scl"); // Get system class loader
        scl.setAccessible(true); // Set accessible
        scl.set(null, new YourClassLoader()); // Update it to your class loader

This should work on the Oracle JVM.

Leave a Comment