Tôi muốn xác định một giá trị trong mã Scala của tôi và coi giá trị này là hằng số (được sử dụng trong chú thích) trong mã Java của tôi (gọi là scala).Có cách nào để coi giá trị scala là hằng số từ java
Ví dụ:
object MyValues {
val a = 5
}
Tuy nhiên khi tôi đang cố gắng sử dụng giá trị này trong Java chú thích nó mang lại cho tôi một lỗi: java: giá trị thuộc tính phải được liên tục
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface MyJavaAnnotation {
int aValue() default MyValues.a(); // <-- Error
}
Gọi nó như thế này không hoạt động: MyValues$.MODULE$.a();
Tôi cũng đã thử tiền tố val với final từ khóa không thành công.
Có cách giải quyết nào cho vấn đề này không?
Thật không may điều này cho cùng một lỗi nếu được xác định trong chú thích, vì tôi có thể thay đổi mã scala (nó là một mô-đun) tôi sẽ tạo mã JAVA sẽ giữ các giá trị và sử dụng nó trong scala và trong java khác của tôi mô-đun –