У меня есть Java-аннотация, которая возвращает двойное значение:
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface DoubleValue {
double value();
}
Когда я пытаюсь прикрепить аннотацию к полю в классе scala, и значение будет отрицательным, как здесь:
class Test {
@DoubleValue(-0.05)
var a = _
}
Я получаю ошибку компилятора с сообщением: «аргумент аннотации должен быть константой; найдено: 0.05.unary_-». Я понял, что мне нужен числовой литерал, и я изучил спецификацию языка Scala, и кажется, что знак - используется только для показателя степени, но не для мантиссы. Есть ли у кого-то идея, как я могу иметь отрицательное значение в качестве информации времени выполнения с использованием аннотаций?
Спасибо,
Klinke