groovy-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dmitrii Samotsvet (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (GROOVY-8898) Annotation value cannot take inline constant from enum.
Date Tue, 04 Dec 2018 09:48:00 GMT

     [ https://issues.apache.org/jira/browse/GROOVY-8898?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Dmitrii Samotsvet updated GROOVY-8898:
--------------------------------------
    Description: 
I've had enum MyProfiles

 
{code:java}
public enum MyProfiles {
    /**some code is here
    */

    public final static String FIRST_PROFILE = "FIRST";
    public final static String SECOND_PROFILE = "SECOND";
}
{code}
And I've used next code in Spock test

 

 
{code:java}
@ActiveProfiles([FIRST_PROFILE ,SECOND_PROFILE ])
{code}
 

So, I've got next error at compile time

Error: Groovyc: Expected 'MyProfiles.FIRST_PROFILE' to be an inline constant of type java.lang.String
not a property expression in @org.springframework.test.context.ActiveProfiles

Error: Groovyc:Attribute 'value' should have type java.lang.String but found type java.lang.Object
in @org.springframework.test.context.ActiveProfiles

 

But it works if I use 'class' instead of 'enum'

  was:
I've had enum MyProfiles

 
{code:java}
public enum MyProfiles {
    /**some code is here
    */

    public final static String FIRST_PROFILE = "FIRST";
    public final static String SECOND_PROFILE = "SECOND";
}
{code}
And I've used next code in Spock test

 

 
{code:java}
@ActiveProfiles([FIRST_PROFILE ,SECOND_PROFILE ])
{code}
 

So, I've got next error at compile time

Error: Groovyc: Expected 'MyProfiles.FIRST_PROFILE' to be an inline constant of type java.lang.String
not a property expression in @org.springframework.test.context.ActiveProfiles

Error: Groovyc:Attribute 'value' should have type java.lang.String but found type java.lang.Object
in @org.springframework.test.context.ActiveProfiles

 

But it works if i use 'class' instead of 'enum'


> Annotation value cannot take inline constant from enum.
> -------------------------------------------------------
>
>                 Key: GROOVY-8898
>                 URL: https://issues.apache.org/jira/browse/GROOVY-8898
>             Project: Groovy
>          Issue Type: Bug
>          Components: Compiler
>    Affects Versions: 2.5.4
>         Environment:  - Windows 10 
>  - IntelliJ Idea 2018
>            Reporter: Dmitrii Samotsvet
>            Priority: Major
>
> I've had enum MyProfiles
>  
> {code:java}
> public enum MyProfiles {
>     /**some code is here
>     */
>     public final static String FIRST_PROFILE = "FIRST";
>     public final static String SECOND_PROFILE = "SECOND";
> }
> {code}
> And I've used next code in Spock test
>  
>  
> {code:java}
> @ActiveProfiles([FIRST_PROFILE ,SECOND_PROFILE ])
> {code}
>  
> So, I've got next error at compile time
> Error: Groovyc: Expected 'MyProfiles.FIRST_PROFILE' to be an inline constant of type
java.lang.String not a property expression in @org.springframework.test.context.ActiveProfiles
> Error: Groovyc:Attribute 'value' should have type java.lang.String but found type java.lang.Object
in @org.springframework.test.context.ActiveProfiles
>  
> But it works if I use 'class' instead of 'enum'



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message