jenkins 是否忽略Gradle构建失败并继续构建脚本?

chhqkbe1  于 2022-12-11  发布在  Jenkins
关注(0)|答案(3)|浏览(208)

使用Gradle管理Android依赖项的方式很奇怪。它们必须以不同的方式下载到本地存储库中。在设置CI构建时,这是一个痛苦的问题,因为有多个节点可以运行它。因此,我使用sdk-manager-plugin在构建时下载Android依赖项。我在使用sdk-manager时似乎遇到了an old bug问题-插件,因为它将在构建时下载依赖项,但它们在该命令上不可用。
下一次运行命令时,一切正常(因为所有内容都已下载),但我需要找到一种方法来忽略第一个gradle命令的构建失败,以便下载所有内容,并为第二个命令做好准备。我知道这很麻烦,但我已经不再纠结于此了。
理想情况下,类似这样的操作会起作用:

./gradlew clean --ignoreBuildFailures
./gradlew distributeCIBuild

我在Gradle文档中能找到的最接近的东西是--相当,但看起来不像是它会工作。
欢迎提出任何有创意的解决方案。

zyfwsgd6

zyfwsgd61#

要使用的标志为--continue
从文档中:
任务失败后继续执行任务。

4zcjmb1e

4zcjmb1e2#

在build.gradle文件中添加以下内容:

tasks.withType(JavaCompile) {
    options.failOnError(false)
}
eyh26e7m

eyh26e7m3#

您可以使用ignoreExitValue

task ktlint(type: JavaExec, group: "verification") {
    description = "Check Kotlin code style."
    ignoreExitValue = true
}

相关问题