#scala #scala-3 #http4s
Вопрос:
У меня есть проект Scala 3 (версия 3.0.0), и я пытаюсь создать простой Rest API с помощью http4s.
У меня проблема с декодированием/кодированием JSON.
Я создаю свой код на основе http4s.g8.
Проблема возникает в этой строке:
implicit val jokeDecoder: Decoder[Joke] = deriveDecoder[Joke]
Ошибка компиляции:
неявный аргумент типа не
deriving.Mirror.Of[com.example.quickstart.Jokes.Joke]
был найден для параметраA
методаderiveDecoder
в объектеsemiauto
Есть ли какие-то изменения в Scala 3, которые делают его другим?
Мои зависимости
scalaVersion := "3.0.0"
val Http4sVersion = "0.23.6"
val CirceVersion = "0.14.1"
libraryDependencies = Seq(
"org.http4s" %% "http4s-blaze-server" % Http4sVersion,
"org.http4s" %% "http4s-blaze-client" % Http4sVersion,
"org.http4s" %% "http4s-circe" % Http4sVersion,
"org.http4s" %% "http4s-dsl" % Http4sVersion,
"io.circe" %% "circe-core" % CirceVersion,
"io.circe" %% "circe-generic" % CirceVersion
)
Ответ №1:
final case class Joke(joke: String) extends AnyVal
это и есть куприт. Перепишите его как
final case class Joke(joke: String)
это должно сработать