我是 Scala 環境的新手,正在嘗試使用 play with 'scalikejdbc' 構建一個測驗專案以進行 SQL 集成。這是我的 build.sbt,遵循http://scalikejdbc.org/documentation/playframework-support.html上的檔案
name := """run"""
organization := "com.example"
version := "1.0-SNAPSHOT"
lazy val root = (project in file(".")).enablePlugins(PlayScala)
scalaVersion := "2.13.10"
libraryDependencies = Seq(
guice,
"org.scalatestplus.play" %% "scalatestplus-play" % "5.0.0" % Test,
"com.h2database" % "h2" % "1.4.200", // your jdbc driver here
"org.scalikejdbc" %% "scalikejdbc" % "4.0.0",
"org.scalikejdbc" %% "scalikejdbc-config" % "4.0.0",
"org.scalikejdbc" %% "scalikejdbc-play-initializer" % "2.8.0-scalikejdbc-3.5",
"com.typesafe.play" %% "play-ws" % "2.3.1"
)
dependencyOverrides = "org.fluentlenium" % "fluentlenium-core" % "0.10.3"
// Adds additional packages into Twirl
//TwirlKeys.templateImports = "com.example.controllers._"
// Adds additional packages into conf/routes
// play.sbt.routes.RoutesKeys.routesImport = "com.example.binders._"
我還在 plugins.sbt 上添加了以下內容
resolvers = Resolver.url("SBT Plugins", url("https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/"))(Resolver.ivyStylePatterns)
然而,在運行之前嘗試更新應用程式時,我遇到了以下問題
[error] (update) found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[error]
[error] * org.scala-lang.modules:scala-parser-combinators_2.13:2.1.0 (early-semver) is selected over {1.1.2}
[error] - org.scalikejdbc:scalikejdbc-core_2.13:4.0.0 (depends on 2.1.0)
[error] - com.typesafe.play:play_2.13:2.8.18 (depends on 1.1.2)
[error] - com.typesafe:ssl-config-core_2.13:0.4.3 (depends on 1.1.2)
[error]
以下是相關版本:
sbt script version: 1.8.0
play version :2.8.18
Scala code runner version 3.2.1 but using as scalaVersion := "2.13.10" in sbt.
uj5u.com熱心網友回復:
庫依賴項中的版本沖突;有些被懷疑是二進制不兼容的
這意味著您至少有兩個依賴項需要第三個,但它們需要 2 個不同的版本,這些版本應該是不兼容的。
由于您的代碼只能包含一個版本,因此 SBT 告訴您:“我將選擇一個版本,但存在該版本無法運行的風險,因為您的代碼可能依賴于另一個版本,這可能不相容”。
您有 2 個選擇:
- 例如,如果您知道實際上沒有不兼容,或者至少在您使用庫的方式上,則強制使用一個版本(for
scala-parser-combinators)dependencyOverrides - 升級或降級庫(
scalikejdbc或play),以便所有庫都依賴于沖突庫的相同版本(scala-parser-combinators)。- 在這種情況下,我會降級
scalikejdbc,因為沒有更新的play版本(截至今天)
- 在這種情況下,我會降級
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/536745.html
標籤:斯卡拉游戏框架sbt
下一篇:circe在包含陣列時看不到欄位
