You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi, in database/rdf-properties, there are mulptiple versions of library com.fasterxml.jackson.core:jackson-core. However, according to Maven's dependency management strategy: "first declaration wins", only com.fasterxml.jackson.core:jackson-core:2.4.4 can be loaded, and com.fasterxml.jackson.core:jackson-core:2.9.6 will be shadowed.
Your project expects to reference the method <com.fasterxml.jackson.core.json.ReaderBasedJsonParser: getTokenLocation()Lcom/fasterxml/jackson/core/JsonLocation;> via com.fasterxml.jackson.core:jackson-databind:jar:2.9.6, which is included in the shaded version com.fasterxml.jackson.core:jackson-core:2.9.6 (original dependency path). However, this method is missing in the actual loaded versioncom.fasterxml.jackson.core:jackson-core:2.4.4. Surprisingly, it will not cause NoSuchMethodError at rumtime.
By further analyzing, I found that the caller(com.fasterxml.jackson.core:jackson-databind:jar:2.9.6) would invoke the method getTokenLocation() defined in com.fasterxml.jackson.core.json.ReaderBasedJsonParser's superclass, due to dynamic binding mechanism (actual dependency path).
However, methods <com.fasterxml.jackson.core.base.ParserBase: getTokenLocation()Lcom/fasterxml/jackson/core/JsonLocation;> and <com.fasterxml.jackson.core.json.ReaderBasedJsonParser: getTokenLocation()Lcom/fasterxml/jackson/core/JsonLocation;> have different implementations, which will lead to buggy behaviors-----
Code snippet of <com.fasterxml.jackson.core.json.ReaderBasedJsonParser: getTokenLocation()Lcom/fasterxml/jackson/core/JsonLocation;> in com.fasterxml.jackson.core:jackson-core:2.9.6 (shadowed but expected to invoke):
Code snippet of <com.fasterxml.jackson.core.base.ParserBase: getTokenLocation()Lcom/fasterxml/jackson/core/JsonLocation;> in com.fasterxml.jackson.core:jackson-core:2.4.4 (loaded version):
Hi, in database/rdf-properties, there are mulptiple versions of library com.fasterxml.jackson.core:jackson-core. However, according to Maven's dependency management strategy: "first declaration wins", only com.fasterxml.jackson.core:jackson-core:2.4.4 can be loaded, and com.fasterxml.jackson.core:jackson-core:2.9.6 will be shadowed.
Your project expects to reference the method <com.fasterxml.jackson.core.json.ReaderBasedJsonParser: getTokenLocation()Lcom/fasterxml/jackson/core/JsonLocation;> via com.fasterxml.jackson.core:jackson-databind:jar:2.9.6, which is included in the shaded version com.fasterxml.jackson.core:jackson-core:2.9.6 (original dependency path). However, this method is missing in the actual loaded versioncom.fasterxml.jackson.core:jackson-core:2.4.4. Surprisingly, it will not cause NoSuchMethodError at rumtime.
By further analyzing, I found that the caller(com.fasterxml.jackson.core:jackson-databind:jar:2.9.6) would invoke the method getTokenLocation() defined in com.fasterxml.jackson.core.json.ReaderBasedJsonParser's superclass, due to dynamic binding mechanism (actual dependency path).
However, methods <com.fasterxml.jackson.core.base.ParserBase: getTokenLocation()Lcom/fasterxml/jackson/core/JsonLocation;> and <com.fasterxml.jackson.core.json.ReaderBasedJsonParser: getTokenLocation()Lcom/fasterxml/jackson/core/JsonLocation;> have different implementations, which will lead to buggy behaviors-----
Code snippet of <com.fasterxml.jackson.core.json.ReaderBasedJsonParser: getTokenLocation()Lcom/fasterxml/jackson/core/JsonLocation;> in com.fasterxml.jackson.core:jackson-core:2.9.6 (shadowed but expected to invoke):
Code snippet of <com.fasterxml.jackson.core.base.ParserBase: getTokenLocation()Lcom/fasterxml/jackson/core/JsonLocation;> in com.fasterxml.jackson.core:jackson-core:2.4.4 (loaded version):
Actual dependency path:
Dependency tree--
[INFO] com.blazegraph:rdf-properties:jar:2.1.6-SNAPSHOT
[INFO] +- commons-io:commons-io:jar:2.1:compile
[INFO] +- org.openrdf.sesame:sesame-util:jar:2.8.11:compile
[INFO] | +- com.google.guava:guava:jar:18.0:compile
[INFO] | - org.slf4j:slf4j-api:jar:1.7.10:compile
[INFO] +- org.openrdf.sesame:sesame-rio-rdfxml:jar:2.8.11:compile
[INFO] | +- org.openrdf.sesame:sesame-model:jar:2.8.11:compile
[INFO] | | - (org.openrdf.sesame:sesame-util:jar:2.8.11:compile - omitted for duplicate)
[INFO] | +- org.openrdf.sesame:sesame-rio-api:jar:2.8.11:compile
[INFO] | | +- (org.openrdf.sesame:sesame-model:jar:2.8.11:compile - omitted for duplicate)
[INFO] | | - (org.openrdf.sesame:sesame-util:jar:2.8.11:compile - omitted for duplicate)
[INFO] | +- org.openrdf.sesame:sesame-rio-datatypes:jar:2.8.11:runtime
[INFO] | | +- (org.openrdf.sesame:sesame-model:jar:2.8.11:runtime - omitted for duplicate)
[INFO] | | +- (org.openrdf.sesame:sesame-rio-api:jar:2.8.11:runtime - omitted for duplicate)
[INFO] | | - (org.openrdf.sesame:sesame-util:jar:2.8.11:runtime - omitted for duplicate)
[INFO] | +- org.openrdf.sesame:sesame-rio-languages:jar:2.8.11:runtime
[INFO] | | +- (org.openrdf.sesame:sesame-model:jar:2.8.11:runtime - omitted for duplicate)
[INFO] | | +- (org.openrdf.sesame:sesame-rio-api:jar:2.8.11:runtime - omitted for duplicate)
[INFO] | | - (org.openrdf.sesame:sesame-util:jar:2.8.11:runtime - omitted for duplicate)
[INFO] | +- (org.openrdf.sesame:sesame-util:jar:2.8.11:compile - omitted for duplicate)
[INFO] | - (commons-io:commons-io:jar:2.4:compile - omitted for conflict with 2.1)
[INFO] +- org.openrdf.sesame:sesame-queryresultio-sparqljson:jar:2.8.11:compile
[INFO] | +- org.openrdf.sesame:sesame-queryresultio-api:jar:2.8.11:compile
[INFO] | | +- (org.openrdf.sesame:sesame-model:jar:2.8.11:compile - omitted for duplicate)
[INFO] | | +- (org.openrdf.sesame:sesame-query:jar:2.8.11:compile - omitted for duplicate)
[INFO] | | +- (org.openrdf.sesame:sesame-rio-api:jar:2.8.11:compile - omitted for duplicate)
[INFO] | | - (org.openrdf.sesame:sesame-util:jar:2.8.11:compile - omitted for duplicate)
[INFO] | +- org.openrdf.sesame:sesame-query:jar:2.8.11:compile
[INFO] | | +- (org.openrdf.sesame:sesame-model:jar:2.8.11:compile - omitted for duplicate)
[INFO] | | - (org.openrdf.sesame:sesame-rio-api:jar:2.8.11:compile - omitted for duplicate)
[INFO] | +- (org.openrdf.sesame:sesame-model:jar:2.8.11:compile - omitted for duplicate)
[INFO] | +- (org.openrdf.sesame:sesame-util:jar:2.8.11:compile - omitted for duplicate)
[INFO] | - com.fasterxml.jackson.core:jackson-core:jar:2.4.4:compile
[INFO] +- com.github.jsonld-java:jsonld-java:jar:0.12.1:compile
[INFO] | +- (com.fasterxml.jackson.core:jackson-core:jar:2.9.6:compile - omitted for conflict with 2.4.4)
[INFO] | +- com.fasterxml.jackson.core:jackson-databind:jar:2.9.6:compile
[INFO] | | +- com.fasterxml.jackson.core:jackson-annotations:jar:2.9.0:compile
[INFO] | | - (com.fasterxml.jackson.core:jackson-core:jar:2.9.6:compile - omitted for conflict with 2.4.4)
[INFO] | +- org.apache.httpcomponents:httpclient-osgi:jar:4.5.6:compile
[INFO] | | +- org.apache.httpcomponents:httpclient:jar:4.5.6:compile
[INFO] | | | +- (org.apache.httpcomponents:httpcore:jar:4.4.10:compile - omitted for duplicate)
[INFO] | | | - (commons-codec:commons-codec:jar:1.10:compile - omitted for duplicate)
[INFO] | | +- commons-codec:commons-codec:jar:1.10:compile
[INFO] | | +- org.apache.httpcomponents:httpmime:jar:4.5.6:compile
[INFO] | | | - (org.apache.httpcomponents:httpclient:jar:4.5.6:compile - omitted for duplicate)
[INFO] | | +- org.apache.httpcomponents:httpclient-cache:jar:4.5.6:compile
[INFO] | | | - (org.apache.httpcomponents:httpclient:jar:4.5.6:compile - omitted for duplicate)
[INFO] | | - org.apache.httpcomponents:fluent-hc:jar:4.5.6:compile
[INFO] | | - (org.apache.httpcomponents:httpclient:jar:4.5.6:compile - omitted for duplicate)
[INFO] | +- org.apache.httpcomponents:httpcore-osgi:jar:4.4.10:compile
[INFO] | | +- org.apache.httpcomponents:httpcore:jar:4.4.10:compile
[INFO] | | - org.apache.httpcomponents:httpcore-nio:jar:4.4.10:compile
[INFO] | | - (org.apache.httpcomponents:httpcore:jar:4.4.10:compile - omitted for duplicate)
[INFO] | +- (org.slf4j:slf4j-api:jar:1.7.25:compile - omitted for conflict with 1.7.10)
[INFO] | +- org.slf4j:jcl-over-slf4j:jar:1.7.25:runtime
[INFO] | | - (org.slf4j:slf4j-api:jar:1.7.25:runtime - omitted for conflict with 1.7.10)
[INFO] | - (commons-io:commons-io:jar:2.6:compile - omitted for conflict with 2.1)
[INFO] +- org.semarglproject:semargl-sesame:jar:0.6.1:compile
[INFO] | +- org.semarglproject:semargl-core:jar:0.6.1:compile
[INFO] | +- org.semarglproject:semargl-rdfa:jar:0.6.1:compile
[INFO] | | +- (org.semarglproject:semargl-core:jar:0.6.1:compile - omitted for duplicate)
[INFO] | | - org.semarglproject:semargl-rdf:jar:0.6.1:compile
[INFO] | | - (org.semarglproject:semargl-core:jar:0.6.1:compile - omitted for duplicate)
[INFO] | - (org.openrdf.sesame:sesame-rio-api:jar:2.7.5:compile - omitted for conflict with 2.8.11)
[INFO] - log4j:log4j:jar:1.2.17:compile
Suggested solutions:
Solution: Declare version com.fasterxml.jackson.core:jackson-core:2.9.6 as a direct dependency.
Thanks.
Best regards,
Coco
The text was updated successfully, but these errors were encountered: