Тапир, Цирцея, Змейка

У меня есть код ниже

import io.circe.generic.auto._
import io.circe.Encoder
import io.circe.generic.extras._, io.circe.syntax._

implicit val config: Configuration = Configuration.default.withSnakeCaseMemberNames

case class User(firstName: String, lastName: String)

print(User("Foo", "McBar").asJson)

Он должен выводить что-то вроде

{
  "first_name" : "Foo",
  "last_name" : "McBar"
}

Но я получаю

{
  "firstName" : "Foo",
  "lastName" : "McBar"
}

Что я делаю неправильно? Я думал, что неявной конфигурации будет достаточно!!!

1 ответ

Решение

import io.circe.generic.auto._вовсе не использоватьConfiguration.

Если вы хотите использовать конфигурацию, вы должны использовать io.circe.generic.extras.auto._.

Общие дополнения (io.circe.generic.extras) не является расширением стандартного вывода (io.circe.generic), но альтернатива, и они плохо смешиваются в одном файле, если вы используетеauto.

Другие вопросы по тегам