Я пытаюсь взломать существующий проект (назовём его bar
), чтобы проверить мой проект (назовем его foo
).
Поэтому в bar
pom я добавил зависимость от foo
. Правильно, когда я это делаю, все существующие тесты в bar
начинают сбой, так как они даже не запускаются (это некоторые интеграционные тесты, которые делают вызовы БД). Я уверен, что есть некоторая зависимость в foo
, который является движущей силой bar
с умом. Есть ли какая-то команда или способ, который покажет мне только те зависимости, которые были переопределены после добавления foo
в bar
в качестве зависимости?
Я не думаю, что есть встроенная функция Maven, которая будет перечислять точно измененные зависимости. Тем не менее, вы можете получить хороший обзор того, что изменилось при запуске
mvn dependency:tree
а также
mvn dependency:analyze
по проекту. Оба будут выводить список всех зависимостей (прямых и транзитивных) в разных форматах. Запускайте их один раз, а один раз с изменениями, затем сравните результаты (обязательно заказывайте результаты по мере необходимости, потому что даже неизменные зависимости могут быть перечислены в другом порядке). Это должно помочь вам понять, что изменилось.
Кроме того, рассмотрите вопрос о том, существует ли проблема независимо от maven и зависимостей. Может быть, проект сканирует путь к классам для инъекции зависимостей и задыхается в одном из новых классов? Или, может быть, это смешные вещи с отражением. Не знаю, если это проблема, но просто постарайтесь сохранить открытый разум.
Если вы используете eclipse, перейдите на вкладку иерархии зависимостей на вашем pom.xml. Затем с помощью зависимостей, которые вы не хотите, используйте эту конструкцию:
<exclusions>
<exclusion>
</exclusion>
</exclusions>
Кроме того, вы можете добавить <scope>test</scope>
и он не будет добавлен в ваш файл jar (я думаю).