On 13.12.24 01:14, James Poli via users wrote:
Our company has upgraded to Groovy 4 and JDK 21. However, one platform
we support, MVS, only supports a JDK 8 runtime.
When running a class compiled with Groovy 4, an exception results:
... java.lang.UnsupportedClassVersionError: JVMCFRE199E bad major
version 61.0 of class=..., the maximum supported major version is 52.0;
offset=6
Can we cross-compile or force Groovy to generate bytecodes that support
JDK 8?
I appreciate any help you can provide.
The problem is not only the bytecode version the compiler produces. It
is also the class library in use and the Groovy runtime using that. You
would need a bytecode level back porting tool like retro lambda...
Or you go and change AsmClassGenerator und its supporting classes to
produce JDK8 compatible code from the beginning... plus several places
you would have to replace because Java8+ Sourcecode in Java is used.
bye Jochen