在Groovy和Grails中使用枚举的正确方法

时间:2014-02-26 09:56:33

标签: grails groovy enums

我想创建一些可在整个应用程序中使用的全局枚举。

我创建了一个名为enums的groovy文件,如下所示:

class Enums {
    enum GameType{
        Game1,
        Game2,
        Game3
        Game4
        Game5
    }

    enum Enum2{
        Type1,
        Type2,
        Type3
    }

}

第一个枚举似乎工作正常,但当我尝试使用第二个时,我得到一个'无法解决类'错误。在Grails中使用Enums的正确方法是什么?

2 个答案:

答案 0 :(得分:14)

每个枚举应该位于src / groovy下的自己的类中。我还建议为他们使用一个包。你的例子应该是

的src /常规/我的/示例/ GameType.groovy

package my.example
enum GameType{
  Game1,
  Game2,
  Game3,
  Game4,
  Game5
}

的src /常规/我的/示例/ Enum2.groovy

package my.example
enum Enum2 {
  Type1,
  Type2,
  Type3
}

答案 1 :(得分:-1)

您可以将所有枚举放在一个文件中;也许Enums.groovy。

package com.myapp

enum GameType{
    Game1,
    Game2,
    Game3,
    Game4,
    Game5
}

enum Enum2{
    Type1,
    Type2,
    Type3
}