module-info.class
in Multi-Release folders is not excluded by default
#729
Milestone
module-info.class
in Multi-Release folders is not excluded by default
#729
Shadow Version
7.1.0
Gradle Version
Gradle 7.3
Expected Behavior
module-info.class
in Multi-Release folders should be excluded by default (see also #352).Some libraries (such as Log4j 2) include the
module-info.class
in the Multi-Release JAR folderMETA-INF/versions/<version>
to keep compatibility with < Java 9, but at the same time define a module descriptor for JREs >= Java 9.There is no point in keeping these module descriptor classes because they are specific to a shadowed library and not relevant (or incorrect) for the resulting 'fat JAR'.
This becomes even more important once #449 has been implemented.
Actual Behavior
The shadowed JAR contains
module-info.class
files in the Multi-Release JAR folderMETA-INF/versions/<version>
.Gradle Build Script(s)
build.gradle.kts
Content of Shadow JAR (
jar tf <jar file>
- post link to GIST if too long)META-INF/versions/9/module-info.class
The text was updated successfully, but these errors were encountered: