У меня 2 модулей в следующей структуреMaven рекомендует не использовать тест-банки, но я бы в конечном итоге с циклической зависимостью
- Lib
- SRC/Основной/Java
- MyInterface
- SRC/тест/Java
- MyMockObject реализует MyInterface
- MyTest1 - использует MyMockObject
- SRC/Основной/Java
- Основная dependsOn: -lib тест-банку объем: тест & -lib
- SRC/тест/Java
- MyTest2 - использует MyMockObject
- SRC/тест/Java
В настоящее время это было прекрасно, как мой основной модуль будет добавить зависимость от модуля тест-банку Либерал, однако, как видно здесь https://maven.apache.org/plugins/maven-jar-plugin/examples/create-test-jar.html Это рекомендуется вместо этого создать -тесту модуль и разоблачать, что вместо того, чтобы использовать тест-банка.
Это, однако, в моем случае приведет к циклической зависимости следующим образом:
- тест - dependsOn -lib
- SRC/главная/Java
- MyMockObject implementsMyInterface
- SRC/главная/Java
- Lib - dependsOn: -test тестовая область
- SRC/Основной/Java
- MyInterface
- SRC/тест/Java
- MyTest1 использует MyMockObject
- SRC/Основной/Java
- m айн dependsOn: -test тестовая область & -lib
- SRC/тест/Java
- MyTest2 - использует MyMockObject
- SRC/тест/Java
Как я могу держать организованную структуру мавена в этом случае?
Я хочу, чтобы некоторые тестовые утилиты, которые будут распределены между испытаниями в различных модулях. – mangusbrother
По-моему, ваша идея хороша, и это недостаток Maven, так как зависящая от объема проверка определяется как циклическая зависимость (нет реального цикла). Что касается тестовой банки, то вы можете ее сохранить. Если вы решили изменить, вы можете разделить 'lib' на' lib-api' и 'lib-impl' – michaldo