Исходные наборы с Gradle Kotlin DSL в классе 4.10rc

Я использую следующий код:

java.sourceSets["main"].java {
    srcDir("src/main/extraSource")
}

отлично работает в gradle 4.9, но в 4.10 rc1 выдает следующую ошибку:

  Line 5: java.sourceSets["main"].java {
               ^ Unresolved reference. None of the following candidates is applicable because of receiver type mismatch: 
                   public val Project.sourceSets: SourceSetContainer defined in org.gradle.kotlin.dsl

Есть идеи? Произошло ли изменение в том, что нужно? Многие другие ответы (например, этот предложенный ответ на этот вопрос) также будут нуждаться в обновлениях, если это изменилось

1 ответ

Решение

Это ожидаемое критическое изменение, которое указано по адресу https://docs.gradle.org/4.10-rc-2/release-notes.html.

Но, к сожалению, он отсутствует в примечаниях к выпуску Kotlin DSL, это будет исправлено для 4.10 GA.

В двух словах, java.sourceSets сейчас sourceSets, Для вашего примера фиксированный скрипт:

sourceSets["main"].java {
    srcDir("src/main/extraSource")
}

Это изменение в gradle/gradleсм. https://github.com/gradle/gradle/pull/5867 для получения дополнительной информации.

Другие вопросы по тегам