Jak dostarczyć wartość do adnotacji ze stałej java
Myślę, że nie jest to możliwe w Javie, ponieważ adnotacja i jej parametry są rozwiązywane w czasie kompilacji. Mam następujący interfejs
public interface FieldValues {
String[] FIELD1 = new String[]{"value1", "value2"};
}
i inna klasa jak,
@SomeAnnotation(locations = {"value1", "value2"})
public class MyClass {
....
}
Zaznaczam wiele klas adnotacją i chciałbym wiedzieć, czy mogę uniknąć określania ciągów w każdej adnotacji, którą wolałbym używać
@SomeAnnotation(locations = FieldValues.FIELD1)
public class MyClass {
....
}
Daje to jednak błędy kompilacji, takie jak wartość adnotacji, powinna być inicjatorem tablicy itp. Czy ktoś wie, jak mogę użyć stałej String lub String [], aby dostarczyć wartość do adnotacji?