kylin-jdbc use dependencies as shaded, so they should not be transitive.
As far as I known, SHADE a dependency to avoid dependency conflict, but at v2.4.0, the dependencies in kylin-jdbc are default compile scope and are transitive resolved, that may cause some dependency conflicts.
We should mark shaded dependencies as optional
There are two solutions about the fixation:
- mark dependency as `optional`
- or change the dependency scope to provided, and add shade artifactSets with include
<include>org.apache.httpcomponents:httpclient:*</include> <include>org.apache.calcite.avatica:avatica-core:*</include> </includes>