All modeling tool plugins (classes and runtime libraries) are loaded by the one classloader. If there are plugins that cannot be loaded by the same classloader (for example, conflicts appear in versions of plugin libraries or other), their descriptors should be defined to use own classloaders. In this case, the plugin classes are loaded by a separate classloader.

An optional property "class-lookup" controls how classes are loaded, if the plugin has its own classloader. If the value of this property is LocalFirst, the class is loaded from the plugin classpath even if such class is already loaded in the global core classloader of your modeling tool. This property is important if you want to use different versions of the same classes (libraries) used in the program core.