Я получаю сообщение об ошибке при попытке присвоить значение переменной среды переменной lateinit
.Ошибка "модификатор 'lateinit' недопустим в свойствах примитивных типов" .
My application.properties (чтение переменной среды)
my.property.from.properties.file=true
MyServiceкласс:
@Component
class MyService @Autowired constructor(
private val someService: SomeService) {
@Value("\${my.property.from.properties.file}")
private lateinit var myBooleanEnabled: Boolean
Присвоение ему значения не решает проблему.Например, с
private lateinit var myBooleanEnabled: Boolean = true
я получаю 2 ошибки:
- модификатор 'lateinit' не разрешен для свойств примитивных типов
- Модификатор 'lateinit' недопустим в свойствах с инициализатором
Для того, что я прочитал, мне нужен делегированный (https://kotlinlang.org/docs/reference/delegated-properties.html), но я не мог понять его полностьюКроме того, я не хочу писать другой метод для установки свойства, если есть «более чистое» решение. Есть идеи?