use*_*581 4 java json jsonschema
在 json-schema-validator 2.1.7 jar 中获取以下提到的异常:
java.lang.NoClassDefFoundError: com/fasterxml/jackson/core/TreeNode
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.lang.ClassLoader.defineClass(ClassLoader.java:466)
Run Code Online (Sandbox Code Playgroud)
我在用:
代码片段如下:
System.out.println(" inside json validation -- 0");
JsonNode data = JsonLoader.fromString(responseString);
System.out.println(" inside json validation -- 1");
JsonNode jsonSchema = JsonLoader.fromResource(schemafilePath);
System.out.println(" inside json validation -- 2");
JsonSchemaFactory factory = JsonSchemaFactory.byDefault();
System.out.println(" inside json validation -- 3");
JsonSchema schema = factory.getJsonSchema(jsonSchema);
System.out.println(" inside json validation -- 4");
ProcessingReport report = schema.validate(data);
Run Code Online (Sandbox Code Playgroud)
如果我没记错的话,对“应该在哪里”jackson-databind具有传递依赖。检查您的文件夹中是否存在:jackson-coreTreeNode.m2
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.2.2</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
如果存在,我同意您可能遇到类路径问题,例如jackson-core类路径中的第一个版本的先前版本。
干杯,