Gradle's war packaging *.pom into WEB-INF\lib?


(Freddy Guime) #1

So I am working moving a project from Maven to Gradle. Everything seems working great, but for a specific library the war is packaging both the .jar and a .pom (from the nexus repo we have). This is not as harmful except for the fact than later we run bootRepackage (as we have a spring boot app) to create an executable war (so we can either run it standalone or deploy into a container). After bootRepackage, since it seems to de-compress and re-compress the WEB-INF\lib folder, it throws an error when trying to java -jar the war

Unable to open nested entry ‘WEB-INF/lib/com.expedia.e3.data.errortypes.v4-4.2.1.958750.pom’. It has been compressed and nested jar files must be stored without compression. Please check the mechanism used to create your executable jar file

So I’m weirded out on how the pom got there in the first place. As a workaround I did
war {
rootSpec.exclude(‘lib/*.pom’)
}

to remove it on the war step, but it’s weird enough to ask if there is something I’m missing (I don’t think any .poms should be in the lib folder right?

Thanks for any help/clarification!