【发布时间】:2017-03-01 15:03:00
【问题描述】:
我正在使用 SBT 0.13.7 构建一个 Scala 2.10.4 项目。我基本上将 Artifactory 用作本地离线缓存(尽管当我尝试在线填充它时会出现这个问题)。
我已经包含了 scalajs-react 库
libraryDependencies += "com.github.japgolly.scalajs-react" %%% "core" % "0.11.2"
但我明白了
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: com.github.japgolly.scalajs-react#core_sjs0.6_2.10;0.11.2: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
我有 Artifactory 指向
http://central.maven.org/maven2/
在其他存储库中,但看起来这个有 0.6_2.11
http://central.maven.org/maven2/com/github/japgolly/scalajs-react/core_sjs0.6_2.11/
SBT 如何确定它需要 0.6_2.10,我能否以某种方式影响它?
额外:
看起来我可以将它指向正确的方向
libraryDependencies += "com.github.japgolly.scalajs-react" %%% "core" % "0.11.2" from "http://central.maven.org/maven2/com/github/japgolly/scalajs-react/core_sjs0.6_2.11/0.11.2/core_sjs0.6_2.11-0.11.2.jar"
但这似乎完全绕过了 Artifactory。
【问题讨论】:
-
您不能在 2.10 项目中包含 2.11 依赖项。您需要先迁移到 2.11。
-
突然 _2.11 变得有意义了。我可以看到该 maven 存储库中有一个 core_sjs0.5_2.10 可用 - 是否有理由使用 0.6_2.11 而不是 0.5_2.10?
-
啊——移动到 2.11 并使用 libraryDependencies += "com.github.japgolly.scalajs-react" % "core_sjs0.6_2.11" % "0.11.2" ?
-
当你使用
%%%而不是%时,sbt会自动添加_sjs0.6_2.11前缀。它会读取您配置的 Scala.js 和 Scala 版本。 -
太好了,谢谢——我很乐意接受这个答案..
标签: scala sbt scalajs-react