Xtend @Data Value Object的附加构造函数

时间:2013-03-20 15:59:48

标签: java xtext value-objects xtend

如何在XTend(XText)中向值对象(带@Data注释)中添加辅助构造函数?

我尝试了以下内容,但它没有编译:

@Data class Dependency {
    val String groupId;
    val String artifactId;
    val String version;
    val String scope;

    new(String groupId, String artifactId, String version) {
        this(groupId, artifactId, version, null)
    }
} 

2 个答案:

答案 0 :(得分:2)

目前无法做到这一点。如果已经定义了构造函数,则@Data注释不会创建新构造函数。您可以使用自定义Active Annotation根据需要定制数据类。

答案 1 :(得分:1)

虽然技术上不是构造函数,但您可以创建工厂方法以多种方式实例化数据类。