Avro SpecificSchemaCompiler空指针异常

时间:2019-03-30 17:11:57

标签: avro avro-tools

我正在尝试以编程方式生成avro Java类。我已经定义了avro模式文件。我正在使用此架构调用SpecificSchemaCompiler对象,然后调用compileToDestination(src,dest)方法来获取生成的类。但是我面临一个空指针异常。

我在现有工作区中遇到的上述问题。因此,我在Eclipse中创建了一个新的Java项目,并尝试了上述方法。在那里工作了,我正在获取生成的Java文件。

我正在使用以下架构。

{      “ type”:“记录”,      “ namespace”:“ gov.mrm”,      “ name”:“客户”,      “ doc”:“我们的客户的平均方案”,
     “字段”:[        {“ name”:“ first_name”,“ type”:“ string”,“ doc”:“客户的名字”},        {“ name”:“ last_name”,“ type”:“ string”,“ doc”:“客户姓氏”},        {“ name”:“ age”,“ type”:“ int”,“ doc”:“注册时的年龄”},        {“名称”:“高度”,“类型”:“浮点数”,“文档”:“注册时的高度,以厘米为单位”},        {“名称”:“重量”,“类型”:“浮动”,“ doc”:“注册时的重量,以千克为单位”},        {“ name”:“ automated_email”,“ type”:“ boolean”,“ default”:true,“ doc”:“该字段指示用户是否注册了营销电子邮件”}      ] }

公共课程测试{

public static void main(String[] args) throws IOException
{
    SpecificCompiler compiler = new SpecificCompiler(new Schema.Parser().parse(new File("src/main/avro/customer.avsc")));
    compiler.compileToDestination(new File("src/main/avro"), new File("src/main/java"));
}

}

我正在追随异常。

线程“主”中的异常java.lang.RuntimeException:java.lang.NullPointerException     在org.apache.avro.compiler.specific.SpecificCompiler.renderTemplate(SpecificCompiler.java:387)     在org.apache.avro.compiler.specific.SpecificCompiler.compile(SpecificCompiler.java:456)     在org.apache.avro.compiler.specific.SpecificCompiler.compileToDestination(SpecificCompiler.java:374)     在main.avro.Test.main(Test.java:14) 造成原因:java.lang.NullPointerException     在org.apache.velocity.runtime.RuntimeInstance.getTemplate(RuntimeInstance.java:831)     在org.apache.velocity.runtime.RuntimeInstance.getTemplate(RuntimeInstance.java:813)     在org.apache.velocity.app.VelocityEngine.getTemplate(VelocityEngine.java:470)     在org.apache.avro.compiler.specific.SpecificCompiler.renderTemplate(SpecificCompiler.java:385)     ...还有3个

0 个答案:

没有答案