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

未找到Gradle DSL方法:更新到Gradle 5.2.1后的“destination()”

  •  0
  • dudi  · 技术社区  · 7 年前

    更新到Gradle 5.2.1后,我的构建失败,出现以下错误:

    Gradle DSL method not found: 'destination()'

    我发现这个错误与我的 analysis.gradle

    我的 分析格拉德尔 看起来是这样

    apply plugin: 'checkstyle'
    apply plugin: 'pmd'
    apply plugin: 'jacoco'
    
    jacoco {
    toolVersion = "0.7.7.201606060606"
    }
    
    check.dependsOn 'checkstyle', 'pmd', 'lint'
    
    task checkstyle(type: Checkstyle) {
    println "----- checkstyle -----"
    configFile file(projectDir.getAbsolutePath() + '/analysis/checkstyle-ruleset.xml')
    
    source 'src'
    source '../domain/src'
    source '../util/src'
    include '**/*.java'
    exclude '**/gen/**'
    exclude '**/java-gen/**'
    exclude '**/androidTest/**'
    exclude '**/test/**'
    
    ignoreFailures = true
    
    classpath = files()
    
    reports {
        xml {
            destination buildDir.absolutePath + "/outputs/reports/checkstyle_report.xml"
        }
    }
    

    }

    我想我得换个新的 destination 但我不知道如何替换它。

    0 回复  |  直到 7 年前
        1
  •  46
  •   M.Ricciuti    7 年前

    Gradle 5.0之前的方法 setDestination(Object file) 已弃用,请参见此处: setDestination(Object file)

    在Gradle 5。此方法已被删除,您现在必须使用 setDestination(File file) 这需要一段时间 File 参数(参见 setDestination(File file) )

    因此,您需要将代码更改为:

    reports {
        xml {
            destination file("$buildDir/outputs/reports/checkstyle_report.xml")
        }
    }
    
        2
  •  4
  •   Codedman    6 年前

    所有的调整都是在我的工作中完成的 quality.gradle 。请检查配置文件夹中的 质量格拉德尔 归档并更改的所有用法

    目标“$reportsDir/pmd/pmd.xml”

    目标文件($reportsDir/pmd/pmd.html)

    推荐文章