Thanks for the explanation, Paul, it makes sense. Long story short: do not upgrade major libraries in bugfix releases ;)
2018-03-21 14:38 GMT+01:00 Paul King <pa...@asert.com.au>: > The ASM 6 jar has a module-info.class file that gets incorporated into our > jar via jarjar. We obviously should exclude that in our build and we do. We > originally only had that build fix for 2_5_X and above builds because we > didn't want to bump ASM version in a point release - but that change was > later made without the accompanying build fix and that caused the > module-info.class problem to resurface in 2.4.14 as well as cause several > other bugs. The ASM change has been reverted for now, until we see whether > the other issues can also be fixed. I'll do a 2.4.15 release after > 2.5.0-rc1 so we have a more JDK9 friendly 2_4_X release. > > Cheers, Paul. > > On Wed, Mar 21, 2018 at 10:48 PM, Cédric Champeau < > cedric.champ...@gmail.com> wrote: > >> The question is why do we have a `module-info.class` file in groovy.jar. >> I thought we had fixed that. Or maybe in 2.4.15? >> >> 2018-03-21 13:46 GMT+01:00 Jochen Theodorou <blackd...@gmx.org>: >> >>> >>> >>> Am 21.03.2018 um 12:34 schrieb Blake McBride: >>> >>>> Thanks! Turns out, this is a known problem with older versions of >>>> tomcat. I don't think any changes in groovy are necessary. >>>> >>> >>> just in case you are somebody else wants to know more >>> >>> Unable to process Jar entry [module-info.class] from Jar >>> [jar:file:/.../build/web/WEB-INF/lib/groovy-2.4.14.jar!/] for >>> annotations >>> org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid >>> byte tag in constant pool: 19 >>> >>> >>> module-info.class is for Java9 and requires a special flag available >>> only in Java9 and later (constant pool entry with id 19). Thus for Tomcat >>> under Java 8 the only solution is to ignore that or use a newer version of >>> bcel that supports java9 and then ignore it. Because you cannot load it. >>> >>> bye Jochen >>> >> >> >