[
https://issues.apache.org/jira/browse/GROOVY-10201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Eric Milles reassigned GROOVY-10201:
------------------------------------
Assignee: Eric Milles
> JDK 17: class String1_groovyProxy cannot implement sealed interface
> java.lang.constant.ConstantDesc
> ---------------------------------------------------------------------------------------------------
>
> Key: GROOVY-10201
> URL: https://issues.apache.org/jira/browse/GROOVY-10201
> Project: Groovy
> Issue Type: Bug
> Affects Versions: 3.0.9
> Reporter: Peter Burka
> Assignee: Eric Milles
> Priority: Major
>
> Doing early testing of some Groovy applications on Java 17 (ea31), and I'm
> encountering some exceptions like the following in unit tests. I'm testing on
> the 3.0.9 branch since 3.0.8 can't compile many of our Groovy classes against
> Java 17.
> {code:java}
> java.lang.IncompatibleClassChangeError: class String1_groovyProxy cannot
> implement sealed interface java.lang.constant.ConstantDesc
> java.base/java.lang.ClassLoader.defineClass1(Native Method)
> java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1012)
> java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:874)
>
> org.codehaus.groovy.runtime.ProxyGeneratorAdapter$InnerLoader.defineClass(ProxyGeneratorAdapter.java:847)
>
> org.codehaus.groovy.runtime.ProxyGeneratorAdapter.<init>(ProxyGeneratorAdapter.java:192)
>
> groovy.util.ProxyGenerator.lambda$createAdapter$0(ProxyGenerator.java:234)
>
> org.apache.groovy.util.concurrent.concurrentlinkedhashmap.ConcurrentLinkedHashMap.lambda$compute$0(ConcurrentLinkedHashMap.java:788)
>
> java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708)
>
> org.apache.groovy.util.concurrent.concurrentlinkedhashmap.ConcurrentLinkedHashMap.compute(ConcurrentLinkedHashMap.java:800)
>
> org.apache.groovy.util.concurrent.concurrentlinkedhashmap.ConcurrentLinkedHashMap.computeIfAbsent(ConcurrentLinkedHashMap.java:777)
>
> org.codehaus.groovy.runtime.memoize.LRUCache.getAndPut(LRUCache.java:63)
> groovy.util.ProxyGenerator.createAdapter(ProxyGenerator.java:230)
>
> groovy.util.ProxyGenerator.instantiateDelegateWithBaseClass(ProxyGenerator.java:205)
>
> groovy.util.ProxyGenerator.instantiateDelegateWithBaseClass(ProxyGenerator.java:189)
> groovy.util.ProxyGenerator.instantiateDelegate(ProxyGenerator.java:181)
> groovy.util.ProxyGenerator.instantiateDelegate(ProxyGenerator.java:177)
>
> org.codehaus.groovy.runtime.DefaultGroovyMethods.asType(DefaultGroovyMethods.java:17910)
>
> org.codehaus.groovy.runtime.StringGroovyMethods.asType(StringGroovyMethods.java:208)
> org.codehaus.groovy.runtime.dgm$1158.doMethodInvoke(Unknown Source)
> groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1268)
> {code}
> I haven't tried to create a simple reproducer, but am happy to try to do so
> if the problem isn't already known or obvious.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)