2016-04-27 7 views
9

я начал видеть следующие предупреждающие сообщения при выполнении SBT сборки:SBT Scala Version Предупреждение

[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 

Почему это? Я нахожусь на sbt 0.13.11!

Что-то изменилось с версией sbt? Наверное, я был на 0.13.5 раньше и не видел такого предупреждения!

ответ

10

Это означает, что ваш проект определяет версию Scala меньше, чем 2.11.8, но sbt решил увеличить ее до 2.11.8, потому что одна из зависимостей использует эту версию. Это не имеет значения, поскольку эти версии совместимы с бинарными. Я предполагаю, что это предупреждает вас, потому что вы, возможно, сознательно использовали меньшую версию из-за некоторой регрессии, и в этом случае вам нужно будет заставить меньшую версию Scala использовать объяснение. В других случаях просто игнорируйте предупреждение или увеличивайте версию Scala вашего проекта до последней версии (2.11.8).

2

Я не уверен, что добавление/изменение версии Scala было бы доброкачественным. Поэтому я просто добавил следующее к моему build.sbt, чтобы избавиться от предупреждений:

evictionWarningOptions in update := 
    EvictionWarningOptions.default 
    .withWarnTransitiveEvictions(false) 
    .withWarnDirectEvictions(false) 
    .withWarnScalaVersionEviction(false) 
Смежные вопросы