Details
-
Improvement
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
v2.4.0
-
None
Description
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
<dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <optional>true</optional> // add this </dependency> // ============= or ============= <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <scope>provided</scope> </dependency> // and <artifactSet> <excludes> <exclude>org.slf4j:jcl-over-slf4j:*</exclude> </excludes> <includes> <include>org.apache.httpcomponents:httpclient:*</include> // force include provided scope <include>org.apache.calcite.avatica:avatica-core:*</include> // force include provided scope </includes> </artifactSet>
Attachments
Issue Links
- links to