我是 bigtop 架构的新手,我想知道 bigtop 是如何知道要在这个特定package之后启动的真正构建命令的./gradlew {package}-rpm,我假设必须有某种配置定义真正的构建命令。(这package是一个基于 Maven 的项目)
谢谢你。
我不熟悉 Bigtop,但我熟悉 Gradle。请参阅此处了解您所指的 Gradle 任务定义:https ://github.com/apache/bigtop/blob/2d6f3dd7b7241aa2191c9ebc5a502a1415932464/packages.gradle#L460
任务将执行的命令在exec指令下给出:rpmbuild <command>. command是在该指令上方定义的参数数组。它的大部分参数都派生自config对象,该对象基本上是由 Groovy 的ConfigSlurper生成的嵌套映射(如 JSON 对象) ,它读取输入 BOM 文件,就好像它是一个 Groovy 文件一样。
所以:
config对象中config配置中定义的每个“组件”,生成一组任务(${package}-rpm和其他)${package}-rpm任务时,使用 BOM 配置使用任务闭包中提供的逻辑派生命令参数rpmbuild使用上述命令参数运行