如何在构建任何分发之前执行gradle任务

时间:2016-01-21 17:49:36

标签: gradle

我有一个使用source和javadoc jar的gradle构建,我希望在distZip和distTar之前执行这些任务,是否有一个依赖项可以捕获与shouldRunAfter一起使用的那两个。

现在我有:

task javadocJar(type: Jar) {
    classifier 'javadoc'
    from javadoc
}

task sourcesJar(type: Jar) {
    classifier 'sources'
    from sourceSets.main.allSource
}

tasks.distZip.shouldRunAfter tasks.javadocJar
tasks.distTar.shouldRunAfter tasks.javadocJar
tasks.distZip.shouldRunAfter tasks.sourcesJar
tasks.distTar.shouldRunAfter tasks.sourcesJar

我想把那四个应该运行的那个压缩到两个,它们捕获了distZip和distTar。

1 个答案:

答案 0 :(得分:7)

您可以使用groovy语法来缩短

[distZip, distTar]*.shouldRunAfter javadocJar, sourcesJar

可能你也想要dependsOn而不是shouldRunAfter,这样只要启用了一个dist任务就可以建立jar。