在进行sbt build时,我开始看到以下警告消息:
[warn] Scala version was updated by one of library dependencies:
[warn] * org.scala-lang:scala-library:(2.11.1, 2.11.7, 2.11.2, 2.11.6, 2.11.5, 2.11.0) -> 2.11.8
[warn] To force scalaVersion, add the following:
[warn] ivyScala := ivyScala.value map { _.copy(overrideScalaVersion = true) }
[warn] Run 'evicted' to see detailed eviction warnings
这是为什么?我是在0.13.11!
sbt版本有什么变化吗?我想我之前在0.13.5,并没有看到这种警告!
答案 0 :(得分:10)
这意味着您的项目定义了一个小于2.11.8的Scala版本,但是sbt决定将其增加到2.11.8,因为其中一个依赖项使用该版本。它不重要,因为这些版本是二进制兼容的。我想它会警告你,因为你可能故意使用较小的版本,因为有些回归,在这种情况下你需要使用解释来强制使用较小的Scala版本。在其他情况下,只需忽略警告或将项目的Scala版本增加到最新版本(2.11.8)。
答案 1 :(得分:2)
我不确定添加/更改Scala版本是否良性。所以我只是将以下内容添加到我的build.sbt中以消除警告:
evictionWarningOptions in update :=
EvictionWarningOptions.default
.withWarnTransitiveEvictions(false)
.withWarnDirectEvictions(false)
.withWarnScalaVersionEviction(false)