当我注释两次时,带有@Repeatable的自定义注释不起作用

时间:2019-02-15 20:49:58

标签: java java-8 annotations

我正在创建一些注释,其中一个我试图启用两次注释。我使用@Repeatable创建了容器。但是,当我两次使用注释时,似乎需要使用@Repeatable。 如下图所示:

enter image description here

消息错误: 重复的非重复类型@ TX2Value的注释。只有标记为@Repeatable的注释类型可以在一个目标上多次使用。

@Repeatable(TX2ValueContainer.class) 
@Retention(RUNTIME)
@Target({ FIELD, METHOD, ANNOTATION_TYPE, TYPE_USE })
public @interface TX2Value {
    String name();
    ...
}

@Retention(RUNTIME)
@Target({ FIELD, METHOD, ANNOTATION_TYPE, TYPE_USE })
@interface TX2ValueContainer {
    TX2Value[] value();
}

public void TestA() {
    @TX2Value(name="test01")
    @TX2Value(name="test02")
    private String value;
}

0 个答案:

没有答案