在SBT 1.2.8中,由于导入了3个插件-sbt-scalajs-crossproject(0.6.0),sbt-scalajs(0.6.26)和sbt-assembly(0.14.9),我的项目中遭到逐出警告)。
依赖关系图如下,当我什至启动sbt控制台时,存在两个驱逐并发出警告。
我知道如何覆盖导入库的驱逐警告,但如何控制插件的警告?此处的两个替代看起来都无害,它们只是次要版本。
答案 0 :(得分:0)
要为override dependencies of plugins设置dependencyOverrides
中的project/plugins.sbt
。例如,说出以下project/plugins.sbt
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "0.6.26")
addSbtPlugin("org.portable-scala" % "sbt-scalajs-crossproject" % "0.6.0")
addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9")
给出驱逐警告
[warn] There may be incompatibilities among your library dependencies; run 'evicted' to see detailed eviction warnings.
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn] * org.scala-js:sbt-scalajs:0.6.26 is selected over 0.6.23
[warn] +- default:project:0.1.0-SNAPSHOT (scalaVersion=2.12, sbtVersion=1.0) (depends on 0.6.26)
[warn] +- org.portable-scala:sbt-scalajs-crossproject:0.6.0 (scalaVersion=2.12, sbtVersion=1.0) (depends on 0.6.23)
然后设置
dependencyOverrides ++= Seq("org.scala-js" % "sbt-scalajs" % "0.6.26")
project/plugins.sbt
中的应该使警告消失。
通常,我的建议是保留警告,直到我们可以通过更新正确解决它们为止。