gradle - gradle 仅在指定的子项目上构建
问题描述
我有一个包含 4 个模块的 Gradle Java 项目,在我的 CI/CD 流程中,我清理并构建了./gradlew clean build
在所有 4 个模块上运行这些任务的项目。但我实际上只需要在其中 3 个上运行它们。所以问题是,我怎样才能创建一个任务,只清理和构建我需要的模块?
我到了这一点:
allprojects.findAll { it.name in ['module1', 'module2', 'module3'] }. each { p ->
configure(p) {
println p.name
}
}
但我不知道如何走得更远,即使我的方向是否正确..
解决方案
怎么样:
allprojects.findAll { it.name in ['module1', 'module2', 'module3'] }. each { p ->
configure(p) {
task customTask {
dependsOn 'clean'
dependsOn 'build'
tasks.findByName('build').mustRunAfter 'clean'
}
}
}
而不是dependsOn
您可能对GradleBuild感兴趣。我没有正确配置它,这就是我使用dependsOn
.
推荐阅读
- c - 在二叉搜索树中插入值字符串(节点)的算法
- sql - 如何在选择查询中将多个 SQL 行合并为一个?
- python - 从 dict 访问一项并将其存储到变量中
- c++ - std::weak_ptr 和相应的 std::shared_ptr 之间是否存在数据竞争?
- hyperledger-fabric - Hyperledger Explorer 测试失败
- c# - Autodesk Forge 创建活动
- visual-studio - 如何强制 VS2019 忽略“尝试”部分中的异常
- python - 如何使用循环遍历 Python 列表中的项目创建 SQL 表键
- java - 如何创建一个快速的伪随机 hashCode?
- ruby-on-rails - Rails 服务器是否在主机“localhost”(127.0.0.1) 上运行并接受端口 5432 上的 TCP/IP 连接?