gradle - 添加对 gradle 任务组的依赖关系

标签 gradle build-process build.gradle

我有一个包含大量发布任务的项目:

Publishing tasks
----------------
generatePomFileForMavenJavaPublication - Generates the Maven POM file for publication 'mavenJava'.
generatePomFileForMavenPublication - Generates the Maven POM file for publication 'maven'.
publish - Publishes all publications produced by this project.
publishMavenJavaPublicationToMavenLocal - Publishes Maven publication 'mavenJava' to the local Maven repository.
publishMavenJavaPublicationToMavenRepository - Publishes Maven publication 'mavenJava' to Maven repository 'maven'.
publishMavenPublicationToMavenLocal - Publishes Maven publication 'maven' to the local Maven repository.
publishMavenPublicationToMavenRepository - Publishes Maven publication 'maven' to Maven repository 'maven'.
publishToMavenLocal - Publishes all Maven publications produced by this project to the local Maven cache.

现在我希望所有这些任务都依赖于 build,以确保在发布任何内容之前运行测试和检查(默认情况下发布任务依赖于 assemble )。

当然可以执行以下操作:

publish.dependsOn(build)
publishToMavenLocal.dependsOn(build)

但维护起来很麻烦,并且不适用于任何生成的任务,例如 publishMavenPublicationToMavenRepository有没有办法为所有发布任务添加依赖项? 当然,我尝试了 publishing.dependsOn(build) 但它只是说:

Could not find method dependsOn() for arguments [task ':build'] on org.gradle.api.publish.internal.DefaultPublishingExtension_Decorated@5b5f8cd6.

最佳答案

无法定义依赖项,但您可以尝试:

tasks.findAll { it.name.startsWith('publish') }*.dependsOn(DA_TASK)

关于gradle - 添加对 gradle 任务组的依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31560078/

相关文章:

java - Gradle 不允许添加 '-processor' java(1.8) 编译器参数

java - 使用Gradle进行时间点构建

Android Gradle 同步 "Tag Mismatch!"错误

msbuild - 使用MSBuild或NAnt相对于从命令行运行DevEnv.exe的优势

android - 仅向特定 flavor 添加依赖项 - Android Studio

java - 错误 : Could not find or load main class cucumber. api.cli.Main

android - google-java-format 依赖同步但没有得到构建。

android - 无法同步Gradle项目/无法使用哈希字符串找到目标

java - 如何在不设置任何环境变量的情况下运行 `ant` 构建脚本?

android构建源错误