io.circe.Encoder[scala.collection.immutable.Map[Int,Any]] 类型的发散隐式扩展

diverging implicit expansion for type io.circe.Encoder[scala.collection.immutable.Map[Int,Any]]

这段代码是我写的

import io.circe._, io.circe.generic.auto._, io.circe.parser._, io.circe.syntax._
Map(1 -> 1, 2 -> "a").asJson.toString

但我收到以下错误

cmd35.sc:1: diverging implicit expansion for type 
io.circe.Encoder[scala.collection.immutable.Map[Int,Any]]
starting with method encodeMapLike in object Encoder
val res35 = Map(1 -> 1, 2 -> "a").asJson.toString
                              ^

您不能直接用 circe 序列化 Map[Int, Any]。如果 IntString 仅允许用于值,则使用 Map[Int, Either[Int, String]] 代替自定义 Encoder,例如 here.