Avro4S: ошибка при десериализации абстрактных типов данных (не удалось найти неявное значение для параметра подтверждения типа FromRecord)

Я использую avro4s

https://github.com/sksamuel/avro4s

Я написал этот код

  import java.io.ByteArrayOutputStream
  import com.sksamuel.avro4s._

  sealed trait Dibble
  case class Dobble(str: String) extends Dibble
  case class Dabble(dbl: Double) extends Dibble

  case class Drapper(dibble: Dibble)

  val drapperIn = Drapper(Dabble(2.0))
  val bios = new ByteArrayOutputStream
  val avro = AvroOutputStream.binary[Drapper](bios)
  avro.write(drapperIn)
  avro.close()

  val is = AvroInputStream.binary[Drapper](bios.toByteArray)
  val drapperOut = is.iterator().toList.head
  is.close()

  println(drapperIn == drapperOut)

Но я получаю следующую ошибку при чтении двоичных данных

Ошибка:(18, 47) не удалось найти неявное значение для параметра улик типа com.sksamuel.avro4s.FromRecord[A$A449.this.Drapper] lazy val is = AvroInputStream.binaryDrapper ^ Ошибка:(18, 47) недостаточно аргументы для двоичного метода: (неявное доказательство $13: com.sksamuel.avro4s.SchemaFor[A$A449.this.Drapper], неявное доказательство $14: com.sksamuel.avro4s.FromRecord[A$A449.this.Drapper])com.sksamuel.avro4s.AvroBinaryInputStream[A$A449.this.Drapper]. Неуказанное значение параметра свидетельство $14. lazy val is = AvroInputStream.binaryDrapper ^

0 ответов

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