When using kumuluzee-maven-plugin the Application is bootstrapped using the EeClassLoader. This class loader creates new JarFile instances for each dependency, but does so in a way that can't support multi release JAR files by using the one argument constructor:
new JarFile(tempFile) which sets the JARs version to the JVMs BASE_VERSION which is 8 in current JDKs and therefore skips multi-release-resolution.
This becomes a problem when updating to newer versions of Weld, where this technique is used to support both Java 8 and Java 17.
When using kumuluzee-maven-plugin the Application is bootstrapped using the EeClassLoader. This class loader creates new JarFile instances for each dependency, but does so in a way that can't support multi release JAR files by using the one argument constructor:
new JarFile(tempFile)
which sets the JARs version to the JVMs BASE_VERSION which is 8 in current JDKs and therefore skips multi-release-resolution.This becomes a problem when updating to newer versions of Weld, where this technique is used to support both Java 8 and Java 17.