首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用dofirst/dolast扩展gradle war任务

如何使用dofirst/dolast扩展gradle war任务
EN

Stack Overflow用户
提问于 2016-09-22 23:44:13
回答 1查看 1.3K关注 0票数 1

我需要使用一些doFirst和doLast命令来扩展gradle war任务,以便在生产状态下编译我的sencha前端。

我知道要扩展一个任务,我需要添加task.doFirst {},但这不适用于war。我使用其他任务做了一些测试,比如

代码语言:javascript
复制
clean {
    doFirst {
        println "test"
    }
}

这起作用了..。但战争并不是这样

代码语言:javascript
复制
war {
    doFirst {
        println "test"
    }
}

我的主要想法是从from列表中删除src/main/webapp并执行sencha-cmd sencha app build -c --destination $war/ production

EN

回答 1

Stack Overflow用户

发布于 2016-09-22 23:51:53

您应该使用它自己的输入/输出为sencha编译创建一个单独的任务,这样Gradle就可以执行最新的检查(因此,如果不需要,可以跳过它)。然后,您可以通过Task.dependsOn(...)将任务连接到gradle DAG

代码语言:javascript
复制
task compileSencha(type:Exec) {
    inputs.dir 'src/main/sencha'
    outputs.dir "$buildDir/sencha"
    commandLine 'sencha', 'app', 'build', file('src/main/sencha').absolutePath, file("$buildDir/sencha").absolutePath
}

war {
   from "$buildDir/sencha"
   dependsOn compileSencha
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39643444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档