我有一个动态 JSON 模式,我需要在运行时将其转换为 Java 源代码我发现这个 Jackson 示例似乎很常见代码运行良好,没有异常,但没有生成任何内容。当我破坏 json 结构(只是为了测试 jackson 是否正常工作)时,我确实遇到了 Jackson 异常...@Testpublic void jsonToJava() throws IOException { JCodeModel codeModel = new JCodeModel(); String schemaContents ="{\"test\":\"test\"}"; GenerationConfig config = new DefaultGenerationConfig() { @Override public boolean isGenerateBuilders() { return true; } }; SchemaMapper mapper = new SchemaMapper(new RuleFactory(config, new Jackson2Annotator(config), new SchemaStore()), new SchemaGenerator()); mapper.generate(codeModel, "HelloWorldClass", "com.my.package", schemaContents); File directory = new File("C:\\temp\\gen"); directory.mkdirs(); codeModel.build(directory);}
1 回答
慕码人2483693
TA贡献1860条经验 获得超9个赞
我对该库一无所知,但该示例似乎无法按原样运行。根据这里的答案,您需要覆盖 DefaultGenerationConfig 中的另一个方法才能使其工作。将以下代码添加到您的示例中对我有用:
@Override
public SourceType getSourceType() {
return SourceType.JSON;
}
添加回答
举报
0/150
提交
取消