我想通过Gradle运行脚本来运行任务,在编译之前运行所有任务,以自动生成运行Android应用程序的工件。
任务:
这是build.gradle模块:
task createArtifacts(type:Exec) {
commandLine 'cmd', '/c', "$rootDir\\create-artifacts.cmd"
workingDir "$rootDir"
}
task copyAssets(type: Copy) {
from "$rootDir/../Artifacts/assets"
into "src/main/assets"
}
afterEvaluate {
android.applicationVariants.all { variant ->
variant.javaCompiler.dependsOn[copyAssets] //How do I make this multiple in this part?
}
}
因此,我想在copyAssets
之前在
afterEvaluate
内部执行任务。
我的参考资料在这里。
我通过创建另一个名为“order”的任务来解决这个问题,并在“evaluate”后调用最后一个任务,以确保遵循顺序。
task createArtifacts(type:Exec) {
commandLine 'cmd', '/c', "$rootDir\\create-artifacts.cmd"
workingDir "$rootDir"
}
task copyAssets(type: Copy) {
from "$rootDir/../Artifacts/assets"
into "src/main/assets"
}
task order {
dependsOn 'createArtifacts'
dependsOn 'copyAssets'
tasks.findByName('copyAssets').mustRunAfter 'createArtifacts'
}
afterEvaluate {
android.applicationVariants.all { variant ->
variant.javaCompiler.dependsOn(order)
}
}
现在,批处理脚本在实际应用程序构建完成之前运行,因此每次构建应用程序时,我的依赖项都会更新。
假设您有默认的构建变体:调试
和发布
。
这就是我如何做我的项目:
afterEvaluate {
if (project.hasProperty("assembleRelease")) {
assembleRelease.dependsOn copyAssets
copyAssets.dependsOn createArtifacts
}
if (project.hasProperty("assembleDebug")) {
assembleDebug.dependsOn copyAssets
copyAssets.dependsOn createArtifacts
}
}
我有一个非常简单的构建。gradle文件包含以下内容: 我想要的是在java编译开始之前运行generateSources任务。我找到了几种解决方法,比如compileJava。dependsOn(“generateSources”),但不幸的是,它们给出了一个错误: 我不认识Gradle,也不明白这个代码出了什么问题。所以我想知道如何修复这个错误。
我的gradle项目中有一个java主程序,我可以通过命令行使用gradle应用程序插件运行任务--args param new从gradle 4.9开始运行,如下所示: 我想在IntelliJ IDEA CE 2018.1中为同样的配置创建一个运行配置。 我在Run/Debug配置dilog中将任务字段指定为 当我运行这个运行配置时,我得到一个错误: 如何通过运行配置使此工作?
我一直在使用<code>mvn tomcat7 maven-plugin:run-am-pl:foo</code>成功地在Tomcat中一次只运行一个项目,如下图所示。现在我想让多个模块在同一端口但不同的上下文下运行。例如,我希望: 这是我一直在使用的pom.xml片段的一个例子: 使用插件是否可以做到这一点?我正在努力寻找正确的语法来让它发挥良好的作用。当我运行命令来运行它时,它只运行它在项目层
我有一个使用apache的简单程序。poi外部库以操作excel文件。我在windows环境中使用了eclipse,现在我必须用terminal在linux上编译和运行我的程序。我搜索了如何包含我需要的那些罐子,但最终出现了以下错误: 错误:无法找到或加载主类xlsToCsv。 我遵循的步骤如下: javac-cp/jars/poi-3.13-20150929。罐子:/jars/poi-ooxml
Jenkins管道插件如何运行并行任务 我是jenkins的初学者,我想使用管道插件在jenkins的可用从节点上并行启动一些任务。 我安装了管道插件并在下面的管道内联脚本部分中添加了。 注意:主节点和从站1是我的节点 理想情况下,第一分支和第二分支是什么???? 控制台输出: 由用户匿名[Pipeline]parallel[Pipele][firstBranch]{(Branch:firstBr
问题内容: 我有一个文件和。 当我进行调试构建时,我得到: 如何将添加到基础任务?关于Java编译选项的Gradle插件用户指南无济于事。 问题答案: 我根据有关操作任务的Gradle插件用户指南和有关JavaCompile的Gradle DSL文档 找到了以下解决方案: 添加到: 应用程序变体在Gradle的配置阶段,所需的任务也不存在,因此我在执行阶段进行了修改。