Использование константы java в параметре аннотации Kotlin

В Spring Boot (с Java) я обычно помещаю имена кеша в статические конечные строки, например:

public static final String MY_CACHE_NAME = "cache_name" @Cacheable(value = MY_CACHE_NAME) 

Но, когда у меня есть класс java с этими именами кеша, и я пытаюсь использовать его в кеш-методе Kotlin, Eclipse говорит мне, что это не «константа времени компиляции». Есть ли способ решить это?

Вне затмения все идет хорошо …

Это довольно странно, это определенно должно работать. Вероятно, у вас проблема конфигурации. Убедитесь, что ваш плагин Kotlin и ваш проект используют одну и ту же версию Kotlin, разные версии часто приводят к ошибкам нечетного компилятора. Используйте последнюю версию в обоих местах, если это возможно.

Это пример кода, который я пробовал, который отлично работал на 1.1.50 (это вздор, но он компилируется):

  • MyConstants.java

     public class MyConstants { public static final String MY_CACHE_NAME = "cache_name"; } 
  • DemoApplication.kt

     @SpringBootApplication class DemoApplication fun main(args: Array<String>) { SpringApplication.run(DemoApplication::class.java, *args) } @Cacheable(MyConstants.MY_CACHE_NAME) fun someFunction() {} 
Intereting Posts
Многомерная матрица «3D» в Котлине Тестирование модулей плагина Intellij IDEA (зависимости от проекта) Почему я не могу получить класс общего параметра? Как я могу завершить свой конструктор? Android Studio Version 3.0 Канальные каналы, не предоставляющие библиотеки поддержки Android 4.x VerifyError, вызванный методом Котлина Как мне передать класс / класс класса Kotlin из String? Можно ли сохранить «Unit» в качестве возвращаемого типа функции Kotlin при вызове с Java? Добавление данных в массивList из другого действия Объединение обязательных и произвольных необязательных аргументов конструктора с Groovy java.util.logging.Logger в тестируемом классе Как лучше подождать, пока актер не остановится в kotlinx.coroutines 0.20? ClassCastException: android.inputmethodservice.KeyboardView не может быть добавлен в com.support.mukhtar.simplekeyboard.CustomKeyboardView android Как настроить JVM 9 на Kotlin с Gradle? Плагин Maven-publish gradle пропускает версию