Don't use RestartClassLoader when proxying classes it did not load

Fixes gh-19010
Fixes gh-25367
This commit is contained in:
Andy Wilkinson
2021-03-10 16:31:58 +00:00
parent 3cc36d518d
commit 952ac7b8d2
3 changed files with 56 additions and 0 deletions

View File

@@ -173,6 +173,11 @@ public class RestartClassLoader extends URLClassLoader implements SmartClassLoad
return defineClass(name, b, 0, b.length, protectionDomain);
}
@Override
public ClassLoader getOriginalClassLoader() {
return getParent();
}
private URL createFileUrl(String name, ClassLoaderFile file) {
try {
return new URL("reloaded", null, -1, "/" + name, new ClassLoaderFileURLStreamHandler(file));