我正在尝试使用 Jerkson 在采用泛型类型的方法中生成枚举的 Json 表示 - 但它看起来很奇怪。我也尝试使用 case 对象,但 Json 结果看起来也不错:
object WeekDay extends Enumeration {
type WeekDay = Value
val Mon, Tue, Wed, Thu, Fri, Sat, Sun = Value
}
trait Letter
case object A extends Letter
case object B extends Letter
case object C extends Letter
object Test extends App {
import com.codahale.jerkson.Json._
import WeekDay._
def printWeekDay(weekday: WeekDay) {println("weekday: " + generate(weekday))}
printWeekDay(Mon)
def printLetter(letter: Letter) {println("letter: " + generate(letter))}
printLetter(A)
}
运行时,我得到:
weekday: {"$outer":{"ValueSet$module":null},"scala$Enumeration$Val$$i":0}
letter: {}
关于如何在 Json 中获得正确值的任何想法?