Я только что начал с scala и хочу создать соединение с моей БД.
(Мои знания основаны на руководстве по scala / doob ie по https://www.scala-exercises.org/)
Теперь вот код:
import doobie._
import doobie.implicits._
import cats.effect._
import cats.implicits._
import doobie.hikari._
...
val transactor: Resource[IO, HikariTransactor[IO]] =
for {
ce <- ExecutionContexts.fixedThreadPool[IO](32) // our connect EC
be <- Blocker[IO] // our blocking EC
xa <- HikariTransactor.newHikariTransactor[IO](
"org.h2.Driver", // driver classname
"jdbc:mysql://localhost:3306/libraries", // connect URL
"root", // username
"", // password
ce, // await connection here
be // execute JDBC operations here
)
} yield xa
Когда я пытаюсь создать свой код, я получаю следующее сообщение об ошибке:
Ошибка: (25, 53 ) Не удается найти неявное значение для ContextShift [cats.effect.IO]:
импортировать ContextShift [cats.effect.IO] из библиотеки эффектов
если используется IO, используйте cats.effect.IOApp или создайте его с помощью cats.effect.IO.contextShift xa <- HikariTransactor.newHikariTransactor [IO] (</p>
сейчас У меня два вопроса:
- В чем именно проблема?
- Как мне ее исправить?