是否可以从 doLast 中执行任务?

我有以下几点:

task copyToLib(type: Copy) {
    from configurations.runtime
    into "$buildDir/output/lib"
    doLast { copyOpcThirdParty() } // this doesnt get executed
}

task copyOpcThirdParty(type: Copy) {
    from "$projectDir/libs/opc/thirdparty"
    into "$buildDir/output/lib/thirdparty/"
}

我怎样才能copyOpcThirdParty打电话copyToLib.doLast

我试过.execute()tasks.copyOpcThirdParty等等,没有任何效果..

它不受支持吗?

卢卡斯·科尔弗

在 Gradle 中,任务不会直接执行。相反,您可以注册依赖项,然后 Gradle 决定以何种顺序执行哪些任务以实现您指定的任务的执行(通常通过命令行)。在旧版本的 Gradle 中,您可以execute()直接调用任务,但永远不应使用它。

在执行任务时,必须始终完成一个任务的执行,直到可以执行另一个任务。一个任务的执行总是包括运行所有的doFirst闭包、所有的内部任务动作和所有的doLast闭包。

对于您的具体示例,您可以使用该finalizedBy方法。它告诉 Gradle,每当一个特定任务运行时,在某个时间之后另一个特定任务也必须运行:

copyToLib.finalizedBy copyOpcThirdParty

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

是否可以在Namenode上执行任务?

是否可以在Google App Engine任务队列中执行任务?

在Gradle中的doLast中调用Ant任务

Android是否按顺序执行任务?

Gradle Jar任务忽略doLast中的destinationDir

Gradle doLast,doFirst在复制任务中的行为

标准库中是否存在类/模板,以在超出范围时执行任务?

如何检查列表中是否有特定内容并根据列表中找到的内容执行任务?

Gradle任务doLast如果任务失败

使用doLast的Gradle exec任务失败

是否有一个普通的 Android SDK 动画器可以间隔执行任务?

是否有必要在Hadoop DataNode上执行任务?

是否可以仅在没有任务运行程序的情况下使用npm脚本执行任务?

为什么clean.doLast不能正常运行,但是clean.doFirst在gradle中却可以正常运行?

在其他任务的 doLast 之后运行 gradle 任务

每当另一个应用程序中发生事件时,是否可以执行任务?

Executors.newSingleThreadExecutor()是否总是按任务提交的顺序执行任务?

Gradle任务。“(type:Copy)”和<doLast>不能同时工作

从执行任务中创建任务

即使测试失败,也可以在测试阶段之后使Gradle执行任务

在Android上将Chrome最小化时,Web应用程序可以执行任务吗?

Javascript检查类名是否已添加到DIV并执行任务

在Ant中无条件执行任务?

GCD在主线程中执行任务

在.rb文件中执行任务

Gradle-如何在doLast中执行命令行并获取退出代码?

从Gradle任务中编辑AndroidManifest.xml任务manifest.doLast从Android Studio运行应用程序时无效

并行执行任务

定期执行任务