Понимание зависимостей тестирования и компиляции сторонних библиотек

#java #maven #gradle #dependencies

#java #maven #gradle #зависимости

Вопрос:

В проекте RabbitMQClient я вижу, что нет зависимостей от компиляции, кроме зависимостей от тестирования. Но внутри jar нет тестовых классов. И если я напишу тест для своего проекта, который содержит классы RabbitMQClient, я буду добавлять зависимости к дополнительным библиотекам только в том случае, если они понадобятся мне в моих тестах. Итак, в чем причина определения тестовых зависимостей такой внешней библиотеки? Возможно, ответ действительно прост, но я его не понимаю.

Спасибо.

Ответ №1:

Тестовые зависимости используются при тестировании этого проекта. Вся идея в том, что они не нужны как часть вашего проекта, который их использует. (Конечно, вы можете независимо захотеть использовать некоторые из тех же библиотек для своих собственных тестов, потому что они полезны, но, в отличие от зависимостей во время компиляции, они не требуются для использования другого проекта.)

Комментарии:

1. ОК. Итак, мое понимание было правильным, для меня это не имеет значения, только если я попытаюсь проверить весь проект RabbitMqClient и выполнить тест. Спасибо