2014-11-22 40 views
-2

我想從json數據集中提取值,其中每個記錄有n> 22個鍵值對。爲了這樣做,我實現了一個具有n個成員變量的case類。但是,scala 2.10.x編譯器報告「實施限制:案例類不能超過22個參數。」不能從json中提取超過22個字段的數據2.10

看來問題來自scala編譯器的限制,但是有沒有什麼繞道來解決這個問題呢?

UPDATE:

我試圖大案類分解成更小的一個(使用嵌套類的情況下),但該程序不能正確地分析在這種情況下JSON。我認爲json4s的實現不允許我們這樣做。

+0

給出的答案可能有幫助。這個問題似乎在這裏解決:https://issues.scala-lang.org/browse/SI-7296 – Alfabravo 2014-11-23 06:17:12

回答

5

1:切換到scala 2.11

2:使用嵌套的大小寫類。例如,如果你有'人'類的大模型,你可以這樣拆分:

case class Details(firstName: String, lastName: String, ...) 
case class Address(state: String, street: String, ...) 
case class Person(details: Details, address: Address)