[ https://issues.apache.org/jira/browse/GROOVY-11624?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Saravanan updated GROOVY-11624: ------------------------------- Description: I have a java class defined (pulled in as byte code from a jar dependency) {code:java} package com.org.nativecompiler.cli; public final class MyDefinitionInJava { public static final String MYTEXTINJAVA = "asdsad"; } {code} I am using this in my Groovy class. When I compile my groovy class with the java jar in the dependency path, {code:groovy} import static com.org.nativecompiler.cli.MyDefinitionInJava.MYTEXTINJAVA; public interface Interfaces { String OTHERTEXT = MYTEXTINJAVA + "1234"; @Deprecated(since = OTHERTEXT) public interface InnerClass { } } {code} I get a compile error (in comple static mode) in the use of OTHERTEXT Expected 'com.org.nativecompiler.cli.MyDefinitionInJava.MYTEXTINJAVA.plus(1234)' to be an inline constant of type java.lang.String in @java.lang.Deprecated This seems to be an issue only if I static import it. This works if I use MyDefintionInJava.MYTEXTINJAVA directly was: I have a java class defined {code:java} package com.org.nativecompiler.cli; public final class MyDefinitionInJava { public static final String MYTEXTINJAVA = "asdsad"; } {code} I am using this in my Groovy class {code:java} import static com.org.nativecompiler.cli.MyDefinitionInJava.MYTEXTINJAVA; public interface Interfaces { String OTHERTEXT = MYTEXTINJAVA + "1234"; @Deprecated(since = OTHERTEXT) public interface InnerClass { } } {code} I get a compile error (in comple static mode) in the use of OTHERTEXT Expected 'com.org.nativecompiler.cli.MyDefinitionInJava.MYTEXTINJAVA.plus(1234)' to be an inline constant of type java.lang.String in @java.lang.Deprecated This seems to be an issue only if I static import it. This works if I use MyDefintionInJava.MYTEXTINJAVA directly > Unable to use statically imported const string in annotation > ------------------------------------------------------------ > > Key: GROOVY-11624 > URL: https://issues.apache.org/jira/browse/GROOVY-11624 > Project: Groovy > Issue Type: Bug > Components: Compiler, Static compilation > Affects Versions: 5.0.0-alpha-12 > Reporter: Saravanan > Assignee: Eric Milles > Priority: Minor > > I have a java class defined (pulled in as byte code from a jar dependency) > > {code:java} > package com.org.nativecompiler.cli; > public final class MyDefinitionInJava { > public static final String MYTEXTINJAVA = "asdsad"; > } > {code} > I am using this in my Groovy class. When I compile my groovy class with the > java jar in the dependency path, > > {code:groovy} > import static com.org.nativecompiler.cli.MyDefinitionInJava.MYTEXTINJAVA; > public interface Interfaces { > String OTHERTEXT = MYTEXTINJAVA + "1234"; > @Deprecated(since = OTHERTEXT) > public interface InnerClass { > } > } > {code} > I get a compile error (in comple static mode) in the use of OTHERTEXT > Expected > 'com.org.nativecompiler.cli.MyDefinitionInJava.MYTEXTINJAVA.plus(1234)' to be > an inline constant of type java.lang.String in @java.lang.Deprecated > This seems to be an issue only if I static import it. This works if I use > MyDefintionInJava.MYTEXTINJAVA directly -- This message was sent by Atlassian Jira (v8.20.10#820010)