我使用avro-maven-plugin 1.8.1从架构生成java代码,所有字段都是公共的并且已弃用,如下所示:
public class data_elements extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord {
private static final long serialVersionUID = 2829359487251568000L;
public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("......");
public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
@Deprecated public java.lang.CharSequence timestamp;
@Deprecated public double value;
@Deprecated public java.lang.CharSequence op;
...
}
令人困惑和不舒服,有谁知道为什么会这样?
答案 0 :(得分:3)
如果您传入fieldVisibility=private
参数,那么@Deprecated
应该会消失,您的字段将是私有的。