У меня есть требование переопределить переходную зависимость к более поздней версии того же самого.
В maven я могу сделать это, просто добавив переопределяющий сверху.
<dependencies>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.9</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.8.9</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-scala_2.11</artifactId>
<version>2.8.9</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_${scala.version.dist}</artifactId>
<version>${spark.version}</version>
</dependency>
<dependency>
<dependency>
<groupId>com.mypackage.road</groupId>
<artifactId>package-that-contains-transitive-deps</artifactId>
<version>4.2.0</version>
</dependency>
Как я могу сделать это в sbt? Также как и графический интерфейс, доступный в maven (вкладка Dependency-Hierarchy), который показывает, какие банки переопределяют другие, как я могу увидеть это в sbt?
Я уже пытался форсировать нужные мне версии с помощью dependencyOverrides. Но проблема все еще существует. Итак, как я могу проверить, что старая версия точно вытеснена версией, которую я переопределяю. sbt dependencyTree не показывает, что более новый вытеснил транзитивную зависимость.