我的build.gradle
看起来像是:
apply plugin: 'war'
war {
...
}
我使用gradle war
在配置阶段,我想运行git submodule update --init --recursive
所以我将build.gradle更改为:
apply plugin: 'war'
task configured(type: Exec) {
commandLine "git submodule update --init --recursive"
}
war {
...
}
当我gradle war
时:
失败:构建因异常而失败。
我没有看到我的子模块正在更新。有什么问题?
编辑:
我在settings.gradle中添加以下行
exec {
commandLine "git", "submodule", "update", "--init", "--recursive"
}
我删除了从build.gradle配置的任务。
你认为这是一个很好的解决方案吗?
答案 0 :(得分:1)
在配置阶段,我想运行git submodule update --init --recursive
您当前的构建是在执行阶段执行此操作。为什么要在配置阶段执行此操作?请注意,这会降低每次Gradle调用的速度。
我没有看到我的子模块正在更新。有什么问题?
仅运行命令行中指定的任务及其任务依赖性。如果您未在命令行中指定configured
,也不让(例如)war
依赖它,则不会运行它。
出了什么问题:无法确定任务':war'的依赖关系。
显然,您的构建脚本的其余部分(您未显示)存在一些问题。也许你试图做一些像war.dependsOn(configured)
这样的事情,并没有把它做得很好。