首页/开发/CI/CD 与发布速查/Jenkins matrix 矩阵构建
工具链要点63 条

Jenkins matrix 矩阵构建

按轴组合生成多个执行单元:axes 定义维度、excludes 排除组合,单元格可带独立的条件与后置处理。

CI/CD 与发布速查开发更新于 2026-10-12
结构axes { axis { name / values } }
排除excludes 过滤不可能组合
单元格可声明 when 与 post
变量轴值作为环境变量注入

跨平台矩阵

跨平台矩阵
stage('cross') {
  matrix {
    axes {
      axis { name 'PLATFORM'; values 'linux', 'windows' }
      axis { name 'JDK'; values '17', '21' }
    }
    excludes {
      exclude {
        axis { name 'PLATFORM'; values 'windows' }
        axis { name 'JDK'; values '17' }
      }
    }
    stages {
      stage('build') { steps { sh "build --platform=$PLATFORM --jdk=$JDK" } }
    }
  }
}
轴值即环境变量:命令参数化直接引用,无需额外转换。

易错点

  • 轴组合数过多:构建时间与资源消耗成倍上升
  • windows 组合缺对应节点:单元格长时间等待或失败

数据来源与参考

  • Jenkins 手册《Pipeline Syntax》(matrix)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌