- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 gradle 的新手。我怎样才能一个接一个地运行 exec 任务?我遇到一个问题,任务test1在android.applicationVariants.all之前运行,属性test为空,如何更改?
项目A
String test = ''
android {
android.applicationVariants.all.doFirst {
test = 'vasya'
}
task test1.doLast{
println "$test"
}
但是我得到了以下输出:
* Where:
Build file '/home/build.gradle' line: 57
* What went wrong:
A problem occurred evaluating project ':ProjectA'.
> No signature of method: java.util.ArrayList.doFirst() is applicable for argument types: (build_6g09fl113rl613 iaq870b0hod0$_run_closure1_closure12_closure18) values: [build_6g09fl113rl613iaq870b0hod0$_run_closure1_closure12_closure18@5f81a4ab]
Possible solutions: first(), toList(), asList(), sort(), sort(groovy.lang.Closure), sort(boolean)
最佳答案
1) 使用 dependsOn 处理层次结构:
task helloTask1 << {
println "hello task 1"
}
task helloTask2(dependsOn: helloTask1) {
println "hello task 2"
}
那么调用helloTask2执行会先触发helloTask1
2) 如果需要使用 mustRunAfter() (此方法处于孵化模式):
task helloTask1 {
println "hello task 1"
}
task helloTask2 {
mustRunAfter helloTask1
println "hello task 2"
}
关于android - 一个接一个地执行任务。 doFirst,doLast Groovy/Gradle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22530640/
我有一个依赖于maven-publish插件的自定义任务。在运行maven-publish插件之前,我的自定义任务需要命令行中的一些参数。 为此,我尝试对自定义任务执行doLast闭合,但是发布任务未
我有一个多模块 gradle 构建,我正在尝试聚合 jacoco 报告,但我希望它在构建完成时发生,我不想将它添加到终端中 gradle 命令的末尾。下面是我如何配置 build.gradle 的片段
我想在执行构建后执行一些文件复制,并找到一些答案说可以使用tasks.build.doLast()。但是,如果我将其添加到我的(或任何 gradle)脚本中,则它不会被调用。 是否必须显式调用它,如果
我想在执行构建后执行一些文件复制,并找到一些答案说可以使用tasks.build.doLast()。但是,如果我将其添加到我的(或任何 gradle)脚本中,则它不会被调用。 是否必须显式调用它,如果
task executeScript() { doFirst { exec { ignoreExitValue true com
这 build.gradle task hello (type: Copy) { doLast { println "print from within" } print
我正在尝试做一件非常简单的事情。由于 gradle 在清理时删除了构建目录中的所有文件,我想在创建发布版本时将 apk 移动到其他地方。所以我在链中添加了一个复制任务,并将其设置为最后一个。我试过的任
仅当自上次构建以来已更新文件时,我才尝试运行 exec 任务。我最初的尝试是这样的: task generateLocalizedStrings(type:Exec) { ext.srcFil
例如,我有 Gradle 脚本,如: myTask_A { doFirst { println "first string" } doLast {
我是 gradle 的新手。我怎样才能一个接一个地运行 exec 任务?我遇到一个问题,任务test1在android.applicationVariants.all之前运行,属性test为空,如何更
使用 Gradle 构建我的最终输出文件后,我想做两件事。更新本地 version.properties 文件并将最终输出 final 复制到某个特定目录以进行存档。假设我已经实现了 2 个方法,它们
task simpleTask{ print("simpleTask is reach"); } task copySomeFile(type: Copy){ print("copyS
我知道传入配置闭包和为任务定义操作之间的区别。我相信你不能使用<<在配置闭包中,因为它看起来像语法错误: task wrong { << { println "From doLast" } } 但
我在 build.gradle 中有一个任务,如下所示: task sourceJar(type: Jar, dependsOn: classes) > " + sourceSets.main.run
我正在尝试通过以下方式使用 AspectJ 编织 Java 和 Kotlin 类文件: android.applicationVariants.all { variant -> JavaCom
我不知道我是否没有做对,或者我是否必须以不同方式处理内置 gradle 任务,但我有一个这样定义的测试任务 task testNGTests(type: Test) { useTestNG(
我正在阅读有关Gradle Exec的信息,并创建了以下build.gradle: task startTomcat(type:Exec) { commandLine 'cmd', '/c',
我使用以下 Gradle 脚本在编译时对 AndroidManifest.xml 进行一些修改。在这个例子中我想注入(inject)一个 元素。代码基于this answer . android {
我是一名优秀的程序员,十分优秀!