Неявный параметр binderfactory[org.joda.time.LocalDateTime] для типа параметра

#scala #implicit

Вопрос:

Я поднял версию scalikejdbc и получил такую ошибку:

[ошибка] Неявный параметр binderfactory[org.joda.time.LocalDateTime] для параметра типа org.joda.time.Отсутствует локальное время. [ошибка] Вам необходимо определить параметр Binderfactory для типа или использовать AsIsParameterBinder.

   def toUpdaters: Seq[(SQLSyntax, ParameterBinder)] = {
    val ses = SeasonProjection.column
    Seq(
      start.map(ses.start -> _) //<- here
 

Как я могу решить эту проблему?

Я не нашел ни одного примера

Ответ №1:

Вы можете ознакомиться с документацией по адресу http://scalikejdbc.org/documentation/operations.html, раздел С использованием библиотеки времени joda.

Вам нужно добавить библиотеку, чтобы scalikejdbc мог работать с Joda:

 libraryDependencies  = "org.scalikejdbc" %% "scalikejdbc-joda-time" % "3.5.0"
 

Затем используйте соответствующий импорт в своем коде, например:

 // If you need ParameterBinderFactory for joda-time classes
import scalikejdbc.jodatime.JodaParameterBinderFactory._
// If you need TypeBinder for joda-time classes
import scalikejdbc.jodatime.JodaTypeBinder._
 

Тем не менее, вы, возможно, захотите избавиться от Joda в пользу java.time того, что в настоящее время является стандартом для представления даты/времени и в большинстве случаев поддерживается библиотеками из коробки.