掲題の通り。evictedはプロジェクトの依存性を全て確認し、依存性が衝突していたりbinary incompatibleの可能性があるものを検出できる。
手元にあった古いプロジェクトで試してみた様子:
% sbt > evicted [warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible: [warn] * org.scala-lang.modules:scala-xml_2.12:1.2.0 is selected over 1.0.6 [warn] +- eu.timepit:refined_2.12:0.9.9 (depends on 1.2.0) [warn] +- org.scala-lang:scala-compiler:2.12.16 (depends on 1.0.6)
ちなみに強制的に間接依存ライブラリのバージョンを固定するにはdependencyOverridesを指定することでsbtに強制的な依存関係の上書きを指揮できる。
dependencyOverrides += "org.scala-lang.modules" %% "scala-xml" % "1.0.6"