[ https://issues.apache.org/jira/browse/TINKERPOP-3067?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stephen Mallette closed TINKERPOP-3067. --------------------------------------- Fix Version/s: 4.0.0 3.7.4 3.8.0 Assignee: Stephen Mallette Resolution: Fixed Should be fixed with: [https://github.com/apache/tinkerpop/commit/0ed74b105b8f40303d671e445480abbf5af619a6] {code:java} jar -tvf gremlin-shaded-3.7.4-SNAPSHOT.jar ... 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/tinkerpop/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/tinkerpop/shaded/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/tinkerpop/shaded/jackson/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/tinkerpop/shaded/jackson/core/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/tinkerpop/shaded/jackson/core/io/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/ 2654 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/BigSignificand.class 8187 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/FastDoubleSwar.class 641 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/FastIntegerMath$UInt128.class 5382 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/11/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/FastIntegerMath.class 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/apache/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/apache/tinkerpop/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/apache/tinkerpop/shaded/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/apache/tinkerpop/shaded/jackson/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/apache/tinkerpop/shaded/jackson/core/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/apache/tinkerpop/shaded/jackson/core/io/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/ 8268 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/FastDoubleSwar.class 641 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/FastIntegerMath$UInt128.class 5382 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/17/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/FastIntegerMath.class 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/apache/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/apache/tinkerpop/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/apache/tinkerpop/shaded/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/apache/tinkerpop/shaded/jackson/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/apache/tinkerpop/shaded/jackson/core/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/apache/tinkerpop/shaded/jackson/core/io/ 0 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/ 7821 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/FastDoubleSwar.class 641 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/FastIntegerMath$UInt128.class 5182 Sun Apr 30 05:00:48 EDT 2023 META-INF/versions/19/org/apache/tinkerpop/shaded/jackson/core/io/doubleparser/FastIntegerMath.class {code} And from the the 17 packaging I pulled a class to check internals: {code:java} $ javap FastDoubleSwar.class Compiled from "FastDoubleSwar.java" class org.apache.tinkerpop.shaded.jackson.core.io.doubleparser.FastDoubleSwar { org.apache.tinkerpop.shaded.jackson.core.io.doubleparser.FastDoubleSwar(); {code} > 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 > Assignee: Stephen Mallette > Priority: Critical > Fix For: 4.0.0, 3.7.4, 3.8.0 > > > 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)