Re: Error in Java 25

Tommy Svensson <[email protected]> Fri, 10 Oct 2025 16:15:56 +0200
Newsgroups gmane.comp.lang.groovy.user
Message-ID <[email protected]>
--68e9152b_44ea97d6_6a0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Sorry, but I don't have anything to say about the specific problem=21=C2=A0=


That said I found this:=C2=A0https://openjdk.org

Is it possible the open source world can take this JVM code and take it i=
n an own, fully backwards compatible direction, so that we can avoid prob=
lems like this =3F=C2=A0
 =20
 Tommy Svensson

tommy=40natusoft.se



 =20
=46r=C3=A5n:=C2=A0Blake McBride <blake1024=40gmail.com>
Svara:=C2=A0users=40groovy.apache.org <users=40groovy.apache.org>
Datum:=C2=A010 oktober 2025 at 01:26:18
Till:=C2=A0users=40groovy.apache.org <users=40groovy.apache.org>
=C3=84mne:=C2=A0 Re: Error in Java 25 =20


 I fixed the problem by upgrading to Groovy 4.0.28

On Thu, Oct 9, 2025 at 4:45=E2=80=AFPM Blake McBride <blake1024=40gmail.c=
om> wrote:

Hello,
I am trying to run an app that runs fine under Java 21 but will not run u=
nder Java 25.
The problem appears to be Groovy. =C2=A0

Sure appreciate any help.


I am running the following:

Groovy: =C2=A04.0.26
Java: =C2=A025
Apache tomcat: 11.0.8

I get the error when trying to run a .groovy file.=C2=A0 So, it isn't a .=
class file.=C2=A0 The Groovy file has not been compiled.=C2=A0 Again, thi=
s code works fine under Java 8, 11, 17, and 21.

The error under Java 25:

09-Oct-2025 16:27:47.947 SEVERE =5Bmain=5D org.apache.catalina.core.Stand=
ardContext.listenerStart Exception sending context initialized event to l=
istener instance of class =5Borg.kissweb.restServer.StartupListener=5D
	BUG=21 exception in phase 'semantic analysis' in source unit '/drive1/RO=
OT/home/blake/Stack360/Kiss/src/main/backend/KissInit.groovy' Unsupported=
 class file major version 69
		at org.codehaus.groovy.control.CompilationUnit=24ISourceUnitOperation.d=
oPhaseOperation(CompilationUnit.java:901)
		at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(C=
ompilationUnit.java:692)
		at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.=
java:666)
		at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:36=
5)
		at groovy.lang.GroovyClassLoader.lambda=24parseClass=242(GroovyClassLoa=
der.java:314)
		at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(Stamp=
edCommonCache.java:163)
		at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(Sta=
mpedCommonCache.java:154)
		at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314)=

		at org.kissweb.restServer.GroovyClass.<init>(GroovyClass.java:59)
		at org.kissweb.restServer.GroovyService.loadGroovyClass(GroovyService.j=
ava:400)
		at org.kissweb.restServer.GroovyService.internalGroovy(GroovyService.ja=
va:265)
		at org.kissweb.restServer.MainServlet.initializeSystem(MainServlet.java=
:352)
		at org.kissweb.restServer.StartupListener.contextInitialized(StartupLis=
tener.java:37)
		at org.apache.catalina.core.StandardContext.listenerStart(StandardConte=
xt.java:4015)
		at org.apache.catalina.core.StandardContext.startInternal(StandardConte=
xt.java:4438)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)=

		at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:5=
66)
		at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652=
)
		at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:926=
)
		at org.apache.catalina.startup.HostConfig=24DeployWar.run(HostConfig.ja=
va:1842)
		at java.base/java.util.concurrent.Executors=24RunnableAdapter.call(Exec=
utors.java:545)
		at java.base/java.util.concurrent.=46utureTask.run(=46utureTask.java:32=
8)
		at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineE=
xecutorService.java:75)
		at java.base/java.util.concurrent.AbstractExecutorService.submit(Abstra=
ctExecutorService.java:125)
		at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:73=
0)
		at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:38=
1)
		at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1582)
		at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.jav=
a:265)
		at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleB=
ase.java:109)
		at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBas=
e.java:389)
		at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:3=
36)
		at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.j=
ava:743)
		at org.apache.catalina.core.StandardHost.startInternal(StandardHost.jav=
a:769)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)=

		at org.apache.catalina.core.ContainerBase=24StartChild.call(ContainerBa=
se.java:1164)
		at org.apache.catalina.core.ContainerBase=24StartChild.call(ContainerBa=
se.java:1160)
		at java.base/java.util.concurrent.=46utureTask.run(=46utureTask.java:32=
8)
		at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineE=
xecutorService.java:75)
		at java.base/java.util.concurrent.AbstractExecutorService.submit(Abstra=
ctExecutorService.java:149)
		at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.j=
ava:716)
		at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine=
.java:203)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)=

		at org.apache.catalina.core.StandardService.startInternal(StandardServi=
ce.java:412)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)=

		at org.apache.catalina.core.StandardServer.startInternal(StandardServer=
.java:866)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)=

		at org.apache.catalina.startup.Catalina.start(Catalina.java:759)
		at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Dir=
ectMethodHandleAccessor.java:104)
		at java.base/java.lang.reflect.Method.invoke(Method.java:565)
		at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:342)
		at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)
	Caused by: java.lang.IllegalArgumentException: Unsupported class file ma=
jor version 69
		at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:200)
		at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:180)
		at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:166)
		at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:288)
		at org.codehaus.groovy.ast.decompiled.AsmDecompiler.parseClass(AsmDecom=
piler.java:83)
		at org.codehaus.groovy.control.ClassNodeResolver.findDecompiled(ClassNo=
deResolver.java:255)
		at org.codehaus.groovy.control.ClassNodeResolver.tryAsLoaderClassOrScri=
pt(ClassNodeResolver.java:193)
		at org.codehaus.groovy.control.ClassNodeResolver.findClassNode(ClassNod=
eResolver.java:175)
		at org.codehaus.groovy.control.ClassNodeResolver.resolveName(ClassNodeR=
esolver.java:129)
		at org.codehaus.groovy.control.ResolveVisitor.resolveToOuter(ResolveVis=
itor.java:782)
		at org.codehaus.groovy.control.ResolveVisitor.resolve(ResolveVisitor.ja=
va:423)
		at org.codehaus.groovy.control.ResolveVisitor.visitClass(ResolveVisitor=
.java:1240)
		at org.codehaus.groovy.control.ResolveVisitor.startResolving(ResolveVis=
itor.java:258)
		at org.codehaus.groovy.control.CompilationUnit.lambda=24addPhaseOperati=
ons=243(CompilationUnit.java:207)
		at org.codehaus.groovy.control.CompilationUnit=24ISourceUnitOperation.d=
oPhaseOperation(CompilationUnit.java:897)
		... 50 more
--68e9152b_44ea97d6_6a0
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline


    <style>body=7Bfont-family:Helvetica,Arial;font-size:13px=7D</style><d=
iv id=3D=22bloop=5Fcustomfont=22 style=3D=22font-family:Helvetica,Arial;f=
ont-size:13px; margin: 0px; line-height: auto;=22>Sorry, but I don't have=
 anything to say about the specific problem=21&nbsp;</div><div id=3D=22bl=
oop=5Fcustomfont=22 style=3D=22font-family:Helvetica,Arial;font-size:13px=
; margin: 0px; line-height: auto;=22><br></div><div id=3D=22bloop=5Fcusto=
mfont=22 style=3D=22font-family:Helvetica,Arial;font-size:13px; margin: 0=
px; line-height: auto;=22>That said I found this:&nbsp;<a href=3D=22https=
://openjdk.org=22>https://openjdk.org</a></div><div id=3D=22bloop=5Fcusto=
mfont=22 style=3D=22font-family:Helvetica,Arial;font-size:13px; margin: 0=
px; line-height: auto;=22><br></div><div id=3D=22bloop=5Fcustomfont=22 st=
yle=3D=22font-family:Helvetica,Arial;font-size:13px; margin: 0px; line-he=
ight: auto;=22>Is it possible the open source world can take this JVM cod=
e and take it in an own, fully backwards compatible direction, so that we=
 can avoid problems like this =3F&nbsp;</div> <br> <div id=3D=22bloop=5Fs=
ign=5F1760105108835118080=22 class=3D=22bloop=5Fsign=22><p style=3D=22mar=
gin: 0px; font-style: normal; font-variant-caps: normal; font-stretch: no=
rmal; font-size: 21px; line-height: normal; font-family: &quot;Bradley Ha=
nd&quot;; font-size-adjust: none; font-kerning: auto; font-variant-altern=
ates: normal; font-variant-ligatures: normal; font-variant-numeric: norma=
l; font-variant-east-asian: normal; font-variant-position: normal; font-v=
ariant-emoji: normal; font-feature-settings: normal; font-optical-sizing:=
 auto; font-variation-settings: normal;=22>Tommy Svensson</p>
<p style=3D=22margin: 0px; font-style: normal; font-variant-caps: normal;=
 font-stretch: normal; font-size: 21px; line-height: normal; font-family:=
 &quot;Bradley Hand&quot;; font-size-adjust: none; font-kerning: auto; fo=
nt-variant-alternates: normal; font-variant-ligatures: normal; font-varia=
nt-numeric: normal; font-variant-east-asian: normal; font-variant-positio=
n: normal; font-variant-emoji: normal; font-feature-settings: normal; fon=
t-optical-sizing: auto; font-variation-settings: normal;=22><a href=3D=22=
mailto:tommy=40natusoft.se=22>tommy=40natusoft.se</a></p><div><p style=3D=
=22margin: 0px; font-stretch: normal; font-size: 21px; line-height: norma=
l; font-family: &quot;Bradley Hand&quot;; font-size-adjust: none; font-ke=
rning: auto; font-variant-alternates: normal; font-variant-ligatures: nor=
mal; font-variant-numeric: normal; font-variant-east-asian: normal; font-=
variant-position: normal; font-feature-settings: normal; font-optical-siz=
ing: auto; font-variation-settings: normal;=22><br></p></div><div><br></d=
iv></div> <div class=3D=22airmail=5Fext=5Fon=22 style=3D=22color:black=22=
><br>=46r=C3=A5n:&nbsp;<span style=3D=22color:black=22>Blake McBride</spa=
n> <a href=3D=22mailto:blake1024=40gmail.com=22>&lt;blake1024=40gmail.com=
&gt;</a><br>Svara:&nbsp;<span style=3D=22color:black=22>users=40groovy.ap=
ache.org</span> <a href=3D=22mailto:users=40groovy.apache.org=22>&lt;user=
s=40groovy.apache.org&gt;</a><br>Datum:&nbsp;<span style=3D=22color:black=
=22>10 oktober 2025 at 01:26:18</span><br>Till:&nbsp;<span style=3D=22col=
or:black=22>users=40groovy.apache.org</span> <a href=3D=22mailto:users=40=
groovy.apache.org=22>&lt;users=40groovy.apache.org&gt;</a><br>=C3=84mne:&=
nbsp;<span style=3D=22color:black=22> Re: Error in Java 25 <br></span></d=
iv><br> <blockquote type=3D=22cite=22 class=3D=22clean=5Fbq=22><span><div=
><div></div><div><div dir=3D=22ltr=22><div dir=3D=22ltr=22>I fixed the pr=
oblem by upgrading to Groovy 4.0.28</div><br><div class=3D=22gmail=5Fquot=
e gmail=5Fquote=5Fcontainer=22><div dir=3D=22ltr=22 class=3D=22gmail=5Fat=
tr=22>On Thu, Oct 9, 2025 at 4:45=E2=80=AFPM Blake McBride &lt;<a href=3D=
=22mailto:blake1024=40gmail.com=22>blake1024=40gmail.com</a>&gt; wrote:<b=
r></div><blockquote class=3D=22gmail=5Fquote=22 style=3D=22margin:0px 0px=
 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex=22><di=
v dir=3D=22ltr=22>Hello,<div><br>I am trying to run an app that runs fine=
 under Java 21 but will not run under Java 25.<br>The problem appears to =
be Groovy. &nbsp;</div><div><br></div><div>Sure appreciate any help.</div=
><div><br></div><div><br></div><div>I am running the following:<br><br>Gr=
oovy: &nbsp;4.0.26<br>Java: &nbsp;25<br>Apache tomcat: 11.0.8</div><div><=
br></div><div>I get the error when trying to run a .groovy file.&nbsp; So=
, it isn't a .class file.&nbsp; The Groovy file has not been compiled.&nb=
sp; Again, this code works fine under Java 8, 11, 17, and 21.<br><br>The =
error under Java 25:<br><br>09-Oct-2025 16:27:47.947 SEVERE =5Bmain=5D or=
g.apache.catalina.core.StandardContext.listenerStart Exception sending co=
ntext initialized event to listener instance of class =5Borg.kissweb.rest=
Server.StartupListener=5D<br>	BUG=21 exception in phase 'semantic analysi=
s' in source unit '/drive1/ROOT/home/blake/Stack360/Kiss/src/main/backend=
/KissInit.groovy' Unsupported class file major version 69<br>		at org.cod=
ehaus.groovy.control.CompilationUnit=24ISourceUnitOperation.doPhaseOperat=
ion(CompilationUnit.java:901)<br>		at org.codehaus.groovy.control.Compila=
tionUnit.processPhaseOperations(CompilationUnit.java:692)<br>		at org.cod=
ehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:666)<br=
>		at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:3=
65)<br>		at groovy.lang.GroovyClassLoader.lambda=24parseClass=242(GroovyC=
lassLoader.java:314)<br>		at org.codehaus.groovy.runtime.memoize.StampedC=
ommonCache.compute(StampedCommonCache.java:163)<br>		at org.codehaus.groo=
vy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:1=
54)<br>		at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.ja=
va:314)<br>		at org.kissweb.restServer.GroovyClass.&lt;init&gt;(GroovyCla=
ss.java:59)<br>		at org.kissweb.restServer.GroovyService.loadGroovyClass(=
GroovyService.java:400)<br>		at org.kissweb.restServer.GroovyService.inte=
rnalGroovy(GroovyService.java:265)<br>		at org.kissweb.restServer.MainSer=
vlet.initializeSystem(MainServlet.java:352)<br>		at org.kissweb.restServe=
r.StartupListener.contextInitialized(StartupListener.java:37)<br>		at org=
.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:=
4015)<br>		at org.apache.catalina.core.StandardContext.startInternal(Stan=
dardContext.java:4438)<br>		at org.apache.catalina.util.LifecycleBase.sta=
rt(LifecycleBase.java:164)<br>		at org.apache.catalina.core.ContainerBase=
.addChild(ContainerBase.java:566)<br>		at org.apache.catalina.core.Standa=
rdHost.addChild(StandardHost.java:652)<br>		at org.apache.catalina.startu=
p.HostConfig.deployWAR(HostConfig.java:926)<br>		at org.apache.catalina.s=
tartup.HostConfig=24DeployWar.run(HostConfig.java:1842)<br>		at java.base=
/java.util.concurrent.Executors=24RunnableAdapter.call(Executors.java:545=
)<br>		at java.base/java.util.concurrent.=46utureTask.run(=46utureTask.ja=
va:328)<br>		at org.apache.tomcat.util.threads.InlineExecutorService.exec=
ute(InlineExecutorService.java:75)<br>		at java.base/java.util.concurrent=
.AbstractExecutorService.submit(AbstractExecutorService.java:125)<br>		at=
 org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:730)<b=
r>		at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:=
381)<br>		at org.apache.catalina.startup.HostConfig.start(HostConfig.java=
:1582)<br>		at org.apache.catalina.startup.HostConfig.lifecycleEvent(Host=
Config.java:265)<br>		at org.apache.catalina.util.LifecycleBase.fireLifec=
ycleEvent(LifecycleBase.java:109)<br>		at org.apache.catalina.util.Lifecy=
cleBase.setStateInternal(LifecycleBase.java:389)<br>		at org.apache.catal=
ina.util.LifecycleBase.setState(LifecycleBase.java:336)<br>		at org.apach=
e.catalina.core.ContainerBase.startInternal(ContainerBase.java:743)<br>		=
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:=
769)<br>		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.j=
ava:164)<br>		at org.apache.catalina.core.ContainerBase=24StartChild.call=
(ContainerBase.java:1164)<br>		at org.apache.catalina.core.ContainerBase=24=
StartChild.call(ContainerBase.java:1160)<br>		at java.base/java.util.conc=
urrent.=46utureTask.run(=46utureTask.java:328)<br>		at org.apache.tomcat.=
util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)=
<br>		at java.base/java.util.concurrent.AbstractExecutorService.submit(Ab=
stractExecutorService.java:149)<br>		at org.apache.catalina.core.Containe=
rBase.startInternal(ContainerBase.java:716)<br>		at org.apache.catalina.c=
ore.StandardEngine.startInternal(StandardEngine.java:203)<br>		at org.apa=
che.catalina.util.LifecycleBase.start(LifecycleBase.java:164)<br>		at org=
.apache.catalina.core.StandardService.startInternal(StandardService.java:=
412)<br>		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.j=
ava:164)<br>		at org.apache.catalina.core.StandardServer.startInternal(St=
andardServer.java:866)<br>		at org.apache.catalina.util.LifecycleBase.sta=
rt(LifecycleBase.java:164)<br>		at org.apache.catalina.startup.Catalina.s=
tart(Catalina.java:759)<br>		at java.base/jdk.internal.reflect.DirectMeth=
odHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)<br>		at java=
.base/java.lang.reflect.Method.invoke(Method.java:565)<br>		at org.apache=
.catalina.startup.Bootstrap.start(Bootstrap.java:342)<br>		at org.apache.=
catalina.startup.Bootstrap.main(Bootstrap.java:473)<br>	Caused by: java.l=
ang.IllegalArgumentException: Unsupported class file major version 69<br>=
		at groovyjarjarasm.asm.ClassReader.&lt;init&gt;(ClassReader.java:200)<b=
r>		at groovyjarjarasm.asm.ClassReader.&lt;init&gt;(ClassReader.java:180)=
<br>		at groovyjarjarasm.asm.ClassReader.&lt;init&gt;(ClassReader.java:16=
6)<br>		at groovyjarjarasm.asm.ClassReader.&lt;init&gt;(ClassReader.java:=
288)<br>		at org.codehaus.groovy.ast.decompiled.AsmDecompiler.parseClass(=
AsmDecompiler.java:83)<br>		at org.codehaus.groovy.control.ClassNodeResol=
ver.findDecompiled(ClassNodeResolver.java:255)<br>		at org.codehaus.groov=
y.control.ClassNodeResolver.tryAsLoaderClassOrScript(ClassNodeResolver.ja=
va:193)<br>		at org.codehaus.groovy.control.ClassNodeResolver.findClassNo=
de(ClassNodeResolver.java:175)<br>		at org.codehaus.groovy.control.ClassN=
odeResolver.resolveName(ClassNodeResolver.java:129)<br>		at org.codehaus.=
groovy.control.ResolveVisitor.resolveToOuter(ResolveVisitor.java:782)<br>=
		at org.codehaus.groovy.control.ResolveVisitor.resolve(ResolveVisitor.ja=
va:423)<br>		at org.codehaus.groovy.control.ResolveVisitor.visitClass(Res=
olveVisitor.java:1240)<br>		at org.codehaus.groovy.control.ResolveVisitor=
.startResolving(ResolveVisitor.java:258)<br>		at org.codehaus.groovy.cont=
rol.CompilationUnit.lambda=24addPhaseOperations=243(CompilationUnit.java:=
207)<br>		at org.codehaus.groovy.control.CompilationUnit=24ISourceUnitOpe=
ration.doPhaseOperation(CompilationUnit.java:897)<br>		... 50 more<br></d=
iv></div>
</blockquote></div></div>
</div></div></span></blockquote>



--68e9152b_44ea97d6_6a0--