You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Marat Kamalov (Jira)" <ji...@apache.org> on 2023/03/29 15:29:00 UTC

[jira] [Created] (GROOVY-10996) Compilation issue in Groovy 4

Marat Kamalov created GROOVY-10996:
--------------------------------------

             Summary: Compilation issue in Groovy 4
                 Key: GROOVY-10996
                 URL: https://issues.apache.org/jira/browse/GROOVY-10996
             Project: Groovy
          Issue Type: Bug
          Components: Compiler
            Reporter: Marat Kamalov


We migrate the application to Groovy 4 and got an issue:

1) We use GroovyClassLoader to load *.groovy written classes to a classloader

2) Before the migration we used Groovy 3.0.15.

3) After the migration to 4.0.10 I've got the following error:
{code:java}
Only classes and closures can be used for attribute 'value' in @org.openl.rules.ruleservice.core.annotations.ServiceExtraMethod
 @ line 18, column 30.
       @ServiceExtraMethod(value = org.openl.generated.services.ServiceExtraMethodHandler2Impl.class)
                                ^ {code}
4) If the annotation definition changed from @ServiceExtraMethod(value = org.openl.generated.services.ServiceExtraMethodHandler2Impl.class) to @ServiceExtraMethod(value = org.openl.generated.services.ServiceExtraMethodHandler2Impl) then the code is compiled successfully.

Why does the compilation start to fail with .class? I can't reproduce the same issue on IntelliJ IDEA.

Can you suggest what to try? Is it expected for Groovy to stop supporting .class in Groovy 4?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)