Как SBT разрешает конфликтующие версии библиотек в зависимости - PullRequest
0 голосов
/ 23 мая 2018

У меня следующая ситуация:

+ Module A
   L Library 1.0


+ Module B
   L Module A
   L Library 2.0

Предположим, что нет никаких изменений интерфейса между Library 1.0 и Library 2.0.

Теперь, когда я импортирую библиотеку в принадлежащий классуна Module B какая версия будет импортирована?Будем благодарны за любые ссылки на полезные ресурсы.

1 Ответ

0 голосов
/ 23 мая 2018

Просто запустите sbt, он должен напечатать предупреждения, такие как:

[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn]  * org.scala-js:sbt-scalajs:0.6.22 is selected over {0.6.19, 0.6.21}
[warn]      +- default:scala-adapters-form-build:0.1.0-SNAPSHOT (scalaVersion=2.12, sbtVersion=1.0) (depends on 0.6.21)
[warn]      +- org.scala-native:sbt-scalajs-crossproject:0.2.2 (scalaVersion=2.12, sbtVersion=1.0) (depends on 0.6.19)

Если он принимает то, что вы хотите, и вы можете жить с предупреждениями, которые вы сделали.

В противном случае вы должныисключить переходные зависимости.

Все это описано здесь: sbt manual

...