This is a good find. I think we should just include the api as compile dependency, and probably only log4j12 as test dependency. Similarly to Kafka Clients and Connect:
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.21</version> <scope>test</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.21</version> <scope>compile</scope> </dependency> Guozhang On Tue, Jul 19, 2016 at 10:39 AM, Mathieu Fenniak < mathieu.fenn...@replicon.com> wrote: > Hello Kafka users, > > I'm starting a new project and experimenting with kafka-streams. It's > pretty great, so far; thanks to everyone involved in the development. > > I noticed that kafka-streams 0.10.0.0 has a dependency on slf4j-log4j12 > (see: > > https://repo1.maven.org/maven2/org/apache/kafka/kafka-streams/0.10.0.0/kafka-streams-0.10.0.0.pom > ). > This doesn't seem correct to me based upon my limited knowledge of slf4j, > as it implies that the consuming application will be using log4j rather > than another slf4j supported logging framework. > > I've been able to use another logging framework (logback) by excluding this > dependency in my build.gradle, as below, but I wanted to ask if this > dependency is a mistake, or intentional? > > compile(group: 'org.apache.kafka', name: 'kafka-streams', version: > '0.10.0.0') { > exclude module: 'slf4j-log4j12' > } > > Thanks, > > Mathieu Fenniak > -- -- Guozhang