-
Notifications
You must be signed in to change notification settings - Fork 367
Description
Even with plugins being separate Gradle projects (see #6602), in the end when running ORT via scripts generated by Gradle's Java Application Plugin everything ends up in a single classpath. That is problematic as different plugins / core tools of ORT might require different versions of the same dependency. This is already the case with the Bundler analyzer and the PdfTemplateReporter that both depend on JRuby (versions 9.4.2.0 and 9.3.8.0 respectively), and forcing them to use the same JRuby version causes weird issues.
A proper solution would probably be to build all plugins as fat-JARs and not put them on the application classpath by default, but using a URLClassLoader that inherits from the application classloader, and pass that to ServiceLoader.load().