Initial mailing list topic here.
In order to avoid the dependency hell issues encountered in previous driver versions (see ), all builds of driver 4.0+, both the "regular" and the "shaded" one, now actually use a shaded version of Guava behind the scenes, and this is not configurable.
Furthermore, this shaded version of Guava is not embedded in the driver jar, but It's packaged separately and pulled in as a regular Maven dependency.
But the Guava shaded jar is 2.9MB currently. It has been requested that we should reduce the resulting artifact to just what's actually necessary for the driver. This could be done e.g. with ProGuard or similar tools.
It should be noted that the main reason we need Guava in driver 4.0 is the TypeToken API: it is used internally mostly to back our implement of our GenericType. We also rely on immutable collections a lot.
Alternatively, we can discuss the option of getting rid of Guava altogether and implementing GenericType from scratch.