Почему configurations.all { conf: Configuration -> ... } ошибка компиляции с: Несоответствие типов: выведенный тип - Единица, но ожидался логический
Я использую build.gradle.kts для сборки своего проекта Android. Следующий код НЕ компилируется:
configurations.all { conf: Configuration ->
println(conf)
}
ошибка:
Println(CONF)
^ Несоответствие типов: предполагаемый тип - Единица, но ожидался логический
Но если вы удалите conf:Configuration ->
Декларация составлена:
configurations.all {
println(conf)
}
Я знаю, что первый соответствует Iteralbe.all
которым нужно логическое возвращаемое значение, а второе соответствует DomainObjectCollection.all
, Но почему?
Спасибо, если ответ
1 ответ
Наконец, я нашел ответ здесь: Kotlin не смог преобразовать класс Action Gradle в лямбду.
и официальный документ: https://kotlinlang.org/docs/reference/compiler-plugins.html?_ga=2.154315515.2101643340.1565659650-1852326073.1562576288