Gradle replace transitive dependency log4j with logback
I am not sure if this is the best or "correct" answer. But at least the WARN
messages have disappeared:
dependencies { compile group: 'org.apache.hadoop', name: 'hadoop-common', version: '2.7.1' compile group: 'org.apache.hadoop', name: 'hadoop-client', version: '2.7.1' compile group: 'org.apache.hadoop', name: 'hadoop-mapreduce-client-core', version: '2.7.1' compile group: 'org.slf4j', name: 'slf4j-api', version: '1.7.13' compile group: 'org.slf4j', name: 'log4j-over-slf4j', version: '1.7.13' compile group: 'commons-io', name: 'commons-io', version: '2.4' compile 'ch.qos.logback:logback-classic:1.1.3'}configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> if (details.requested.name == 'slf4j-log4j12') { //prefer 'log4j-over-slf4j' over 'log4j', with fixed version: details.useTarget "ch.qos.logback:logback-classic:1.1.3" } }}