代码之家  ›  专栏  ›  技术社区  ›  innov8

4.10rc级gradle kotlin DSL源集

  •  7
  • innov8  · 技术社区  · 7 年前

    我使用以下代码:

    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
    

    有什么想法吗?有什么需要改变吗? 许多其他的答案(如。 this one 如果这个问题的每一个建议答案发生了变化,也需要更新

    1 回复  |  直到 7 年前
        1
  •  12
  •   eskatos Mark Vieira    7 年前

    这是一个预期的突破性变化,列在 https://docs.gradle.org/4.10-rc-2/release-notes.html#changes-to-the-gradle-kotlin-dsl

    但不幸的是,Kotlin DSL的发行说明中缺少它,它将被修复为4.10 GA。

    java.sourceSets 是现在 sourceSets . 对于您的示例,固定脚本是:

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

    gradle/gradle ,请参见 https://github.com/gradle/gradle/pull/5867 作为背景。