Currently the SDK library has been published as a FATJAR.
Make changes to deploy both thin and fat JAR.
For thin JAR, the library use: consumers just declare your library in Maven/Gradle and all required dependencies are automatically pulled. No tedious classpath setup.
For FATJAR, it is not ideal for library publishing; consumers might end up with duplicated dependencies if they already use some of the same dependencies in their project.