2

Java で 1 つの値 (String[]); を取るカスタム注釈を作成しました。

@Retention(value = RetentionPolicy.RUNTIME)
public @interface MyAnnotation{
    String[] value ();
}

ただし、MyAnnotation を使用するときの値を次のようにしたい: aClassName.anAttribute

  • aClassName は、アプリケーション内のクラスの名前です
  • anAttribute は、文字列である属性の 1 つです。

    public static String anAttribute1="aStringxxx";

しかし、私はエラーを受け取ります:The value for annotation attribute MyAnnotation.value must be a constant expression 誰かアイデアをお願いします?

4

3 に答える 3

0

あなたの質問を正しく理解したかどうかはわかりませんが、AFAIK では、注釈を使用する同じクラスで定義されている定数を使用できません。

考えられる解決策: 定数をヘルパー クラスに移動する

于 2013-05-08T14:23:45.030 に答える