[
https://issues.apache.org/jira/browse/TINKERPOP-3067?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yang Xia updated TINKERPOP-3067:
--------------------------------
Priority: Critical (was: Minor)
> gremlin-shaded incomplete shading due to Jackson multi-release classes
> ----------------------------------------------------------------------
>
> Key: TINKERPOP-3067
> URL: https://issues.apache.org/jira/browse/TINKERPOP-3067
> Project: TinkerPop
> Issue Type: Bug
> Components: build-release
> Affects Versions: 3.7.1
> Environment: JVM
> Reporter: Peter Laird
> Priority: Critical
>
> gremlin-shaded is using the Maven shade plugin to package the release jar.
> Unfortunately, it isn't configured to handle the Jackson multi-release
> classes, so the shading is incomplete. You can see that by inspecting the
> contents of the jar (focusing on just {{{}FastIntegerMath below){}}}:
> {{% jar -tvf gremlin-shaded-3.7.1.jar}}
> {{...}}
> {{org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/FastIntegerMath.class}}
> {{META-INF/versions/11/com/fasterxml/jackson/core/io/doubleparser/FastIntegerMath.class}}
> {{META-INF/versions/17/com/fasterxml/jackson/core/io/doubleparser/FastIntegerMath.class}}
> {{META-INF/versions/19/com/fasterxml/jackson/core/io/doubleparser/FastIntegerMath.class}}
> {{...}}
> Notice how the shading is only applied to the default version of the class.
> The multi-release classes are not being shaded. This, in our case, is causing
> classpath conflicts with our chosen Jackson version.
> The shading config is here:
> [https://github.com/apache/tinkerpop/blob/master/gremlin-shaded/pom.xml#L60]
> According to stackoverflow, the shading plugin has a multi-release option:
> https://stackoverflow.com/questions/53049346/is-log4j2-compatible-with-java-11/54713830#54713830
--
This message was sent by Atlassian Jira
(v8.20.10#820010)