Hey Kafkas, Would it make sense to offer a no-deps Kafka client (with third-party packages like com.example.xxx relocated to a package like org.apache.kafka.relocated.com.example.xxx)? cglib is one example of a project that does this, in the form of cglib-nodep:
http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22cglib%22 I'm asking because in Druid, we are running into conflicts with Kafka's lz4 and Druid's lz4: https://github.com/druid-io/druid/issues/3266 We do have a classloader isolation mechanism for extensions like our Kafka plugin, but unfortunately it doesn't help here. lz4 is used by Druid's base classloader, which is a parent of the extension classloader, so Kafka's won't get loaded. We could work around the problem by upgrading to 0.10, but (a) we're hesitant since AFAIK this would mean dropping support for 0.9 brokers, and (b) this time it was lz4 but there may be other issues in the future. This may just be our problem to solve with a more creative classloader setup, but I also wanted to float the idea of an easier-to-embed nodeps kafka library. Gian