Я разрабатываю приложение на основе Java, которое производит/потребляет сообщения kafka. В моем помпе у меня есть:Включая kafka maven, чтобы привести к ошибкам конвергенции
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.9.2</artifactId>
<version>0.8.2.2</version>
</dependency>
Я также использую плагин maven enforcer. В eclipse, который, как представляется, не вызывает плагин forcecer, программа строит и работает нормально. Вне затмения, когда я делаю «МВН чистый пакет» Инфорсер бросает ошибку конвергенции:
Dependency convergence error for org.apache.zookeeper:zookeeper:3.4.6 paths to dependency are:
+-com.mystuff:1.0
+-org.apache.kafka:kafka_2.9.2:0.8.2.2
+-org.apache.zookeeper:zookeeper:3.4.6
and
+-com.mystuff:1.0
+-org.apache.kafka:kafka_2.9.2:0.8.2.2
+-com.101tec:zkclient:0.3
+-org.apache.zookeeper:zookeeper:3.3.1
Что рекомендуемый способ справиться с этим? Если конечно, я мог бы исключить транзитивную зависимость от zookeeper и добавить его явно, но, похоже, странно, что я не смог бы построить проект kafka, не прибегая к этому. Как правило, вы исключаете переходные зависимости, когда они входят в разные версии из разных зависимостей верхнего уровня. Здесь - у меня проблема с одной и только одной зависимостью верхнего уровня, кафкой.