Ola*_*eni 14 java jar classloader
到目前为止,我看到的自定义ClassLoader示例涉及子类化URLClassLoader,并使用该特定实例加载资源中的类.
我徒劳地试图寻找替换SystemClassLoader的替代方法,以便可以为不在类路径中的类查询我的ClassLoader.
我试过了Thread.currentThread().setContextClassLoader,但似乎没有用.
它甚至可能吗?
Xye*_*ene 12
虽然这是一个老问题,但确实有一种方法可以替换系统ClassLoader.然而,通过反思,你可能会得到比你讨价还价更多的东西.
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
Run Code Online (Sandbox Code Playgroud)
这应该适用于Oracle JVM.
Tar*_*log 10
使用java.system.class.loader属性运行JVM :
java -Djava.system.class.loader=myClassLoader myApplication
Run Code Online (Sandbox Code Playgroud)