You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "Stephen Mallette (Jira)" <ji...@apache.org> on 2020/03/06 15:50:00 UTC
[jira] [Commented] (TINKERPOP-2347) Remove invalid service
descriptors from gremlin-shaded
[ https://issues.apache.org/jira/browse/TINKERPOP-2347?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17053546#comment-17053546 ]
Stephen Mallette commented on TINKERPOP-2347:
---------------------------------------------
Since this change isn't breaking anything, please consider targeting the 3.3-dev branch so that we can apply the fix from 3.3.11 forward. Thanks.
> Remove invalid service descriptors from gremlin-shaded
> ------------------------------------------------------
>
> Key: TINKERPOP-2347
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2347
> Project: TinkerPop
> Issue Type: Bug
> Components: build-release
> Affects Versions: 3.4.5
> Reporter: Olivier Michallat
> Priority: Minor
>
> {{gremlin-shaded.jar}} contains a couple of service descriptors inherited from Jackson:
> {code}
> META-INF/services/com.fasterxml.jackson.core.JsonFactory
> META-INF/services/com.fasterxml.jackson.core.ObjectCodec
> {code}
> They still reference unshaded classes, for example in the first one:
> {code}
> com.fasterxml.jackson.core.JsonFactory
> {code}
> This creates a problem if the JAR is used as an automatic module in a JPMS application. The module system tries to convert the files into {{provides}} directives in the dynamically generated module descriptor, but it checks for the existence of the types in the process:
> {code}
> Error occurred during initialization of boot layer
> java.lang.module.FindException: Unable to derive module descriptor for /path/to/gremlin-shaded-3.4.5.jar
> Caused by: java.lang.module.InvalidModuleDescriptorException: Provider class com.fasterxml.jackson.core.JsonFactory not in module
> {code}
> I didn't find a way to work around this error without modifying the JAR.
> I think the best approach would be to filter out those files during the shading process. They were wrong anyway, so it's unlikely that anyone will miss them.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)