我正在尝试使用 for 循环并行运行构建列表,因为代码变得越来越大。
我有一个包含项目名称的全局列表
@Field def final String[] projectsList = ['project1','project2', 'project3'....]
stages {
stage('Parallel Build') {
steps{
script{
def branches = [:]
for(int i = 0;i<15;i++) {
branches["Build "+projectsList[i]] = {buildProject(i)}
}
parallel branches
}
}
}
Run Code Online (Sandbox Code Playgroud)
Build items 方法从全局列表中获取项目名称并使用 maven 构建它。
问题是,索引 15 的项目(不应该构建)正在并行构建 15 次。就好像它一直在等待,直到 for 循环结束,然后将相同的可用 i 值 (15) 在本例中分配给所有方法。
你知道我该如何解决这个问题吗?