私はjsonから値を抽出しようとしています各レコードがn> 22のキーと値のペアを持つデータセット。これを行うために、n個のメンバ変数を持つケースクラスを実装しました。しかし、scala 2.10.xコンパイラは、「実装の制限:caseクラスは22個以上のパラメータを持つことはできません」と報告しています。
スカラーコンパイラの限界から来ているようですが、この問題を解決するための迂回路はありますか?
更新:
私は大きなケースクラスをより小さなもの(ネストされたケースクラスを使用する)が、その場合、プログラムはjsonを正しく解析できません。私はjson4sの実装は私たちがそうすることを許可しないと思う。
回答:
回答№1は51:スカラ2.11に切り替える
2:ネストされたケースクラスを使用します。例えば、 "Person"クラスの大きなモデルを持っているなら、次のように分割することができます:
case class Details(firstName: String, lastName: String, ...)
case class Address(state: String, street: String, ...)
case class Person(details: Details, address: Address)