VitalClassLoader
The main internal class loader responsible for loading the custom nested-jar structure of the final plugin jar file. Will load classes and resources from its own classpath first, before delegating to its parent class loader (plugin).
Exposes a way to configure parent-first packages via vital.properties.
Parent-first packages are needed when multiple class definitions are found on the plugin classpath and nested-jars (dependencies) and type definitions are conflicting between classloaders.
Parameters
configures which parent-first packages are loaded from vital.properties, e.g., classLoaderName = "spigot" -> will load the key "vital.classloader.spigot.parent-first-packages" in vital.properties
Inheritors
Properties
Functions
exposes a way to manually add urls to the url path of this class loader (delegates to URLClassLoader.addURL)