У меня типичная проблема переходных зависимостей, для которой я не смог найти разрешение.
В моем проекте используются spark
и hadoop-tools
зависимости.spark
использует hadoop-mapreduce-client-core
, а hadoop-tools
использует hadoop-core
hadoop-core
и hadoop-mapreduce-client-core
конфликтуют друг с другом.Другими словами, hadoop-mapreduce-client-core
является более новой версией (mapreduce2) hadoop-core
(mapreduce1).
В этом проекте у меня будут некоторые исполняемые файлы, которые запускают задания spark
, а некоторые - Distcp
(зависит от hadoop-tools
).Как мне указать эту связь / зависимость / силу в build.gradle
, чтобы и потоки spark
, и потоки hadoop-tools
находили свои собственные зависимости во время выполнения.