[
https://issues.apache.org/jira/browse/TINKERPOP-2347?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stephen Mallette closed TINKERPOP-2347.
---------------------------------------
Fix Version/s: 3.4.7
3.3.11
3.5.0
Assignee: Stephen Mallette
Resolution: Fixed
> 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
> Assignee: Stephen Mallette
> Priority: Minor
> Fix For: 3.5.0, 3.3.11, 3.4.7
>
>
> {{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)