#scala #sbt
#scala #sbt
Вопрос:
У меня есть следующая зависимость maven
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase</artifactId>
<version>0.90.4</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
Я знаю, как указать groupId, artifactId, версию и область видимости
"org.apache.hbase" % "hbase" % "0.90.4" % "test"
но как мне указать тип (test-jar), чтобы я получил hbase-0.90.4-tests.jar из репозитория?
Ответ №1:
"org.apache.hbase" % "hbase" % "0.90.4" % "test" classifier "tests"
Комментарии:
1. Сбивает с толку то, что «тип» в maven переводится в классификатор в sbt. Потому что в maven есть «классификатор» в дополнение к «типу». Интересно, что классификатор в maven преобразует в sbt?
2. Это темный угол sbt. Если вы добавите зависимость, которая сама по себе имеет зависимости, в ней pom.xml у которых есть <тип> test-jar, тогда sbt (или, возможно, ivy) не будет загружать эти зависимости.
3. Я уже решил указать и развернуть артефакты / зависимости test-jar явно как jar с классификатором тестов.