找不到JsonWriter或JsonFormat类型的类

时间:2018-04-10 08:57:43

标签: scala spray spray-json

以下代码无法找到JsonWriter或JsonFormat类型类:

import com.typesafe.scalalogging.LazyLogging
import spray.json._

case class MatcherRequest2(dataType:String, testType:String)

object MatcherWriterJsonSupport2 extends /*SprayJsonSupport with*/ DefaultJsonProtocol {
  implicit val matcherRequest = jsonFormat2(MatcherRequest2)
}

object MatcherTransfer2 extends LazyLogging {
  import MatcherWriterJsonSupport2.rmobMatcherRequest
  def fetchSignExtractionDone: Unit = {

    val matcherRequest: MatcherRequest2 = MatcherRequest2("FeatureCollection", "testC")
    matcherRequest.toJson
  }
}

错误:

  

错误:(24,24)找不到JsonWriter或JsonFormat类型   MatcherRequest2       rmobMatcherRequest.toJson

     

错误:(24,24)方法toJson的参数不够:(隐式   writer:spray.json.JsonWriter [MatcherRequest2])spray.json.JsValue。   未指定的值参数编写器。       rmobMatcherRequest.toJson

1 个答案:

答案 0 :(得分:0)

呃,我的坏。对于隐式变量和导致上述错误的MatcherTransfer2对象,变量名称matcherRequest是相同的。

  

隐式val matcherRequest = jsonFormat2(MatcherRequest2)

替换为

  

隐式val matcherRequestFormat = jsonFormat2(MatcherRequest2)