Package org.eolang.jeo
Class JeoClassLoader
- java.lang.Object
-
- java.lang.ClassLoader
-
- org.eolang.jeo.JeoClassLoader
-
public final class JeoClassLoader extends ClassLoader
JEO class loader.This classloader reads classes from specified directories, loads them into memory, and makes them available for class loading operations. This happens before any transformations are applied.
Preloading allows safe class validation. The validator loads "old" classes and uses them for the validation of the "newly" generated classes. Moreover, by using
JeoClassLoader
, we can guarantee that the classes loaded before any transformations are correct.If we use any other
ClassLoader
implementation it leads to flaky tests as issue 672 shows.- Since:
- 0.6.0
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class<?>
loadClass(String name)
-
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findClass, findLibrary, findLoadedClass, findResource, findResource, findResources, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
-
-
-
Method Detail
-
loadClass
public Class<?> loadClass(String name) throws ClassNotFoundException
- Overrides:
loadClass
in classClassLoader
- Throws:
ClassNotFoundException
-
-