Pipeline 中findFiles 使用glob 后,发现没有找到需要的文件

Pipeline 中findFiles 使用glob 后,发现没有找到需要的文件

首先上例子:

编译之后生成了pom文件,想要直接搜索到pom文件的路径,所以Pipeline中定义如下:

def pomPath = findFiles(glob: '**/'+sdkName+'/pom-default.xml')

使用之后,发现找不到文件,懵了,经过官网查找,发现这个是需要匹配特定的模式的

官网: https://www.jenkins.io/doc/pipeline/steps/pipeline-utility-steps/

Ant style pattern:  https://ant.apache.org/manual/dirtasks.html#patterns

让我们看一下我使用的模式能够匹配到什么?

很明显,我们使用的是第一种,它主要查找的是CVS/XX 这样的模式的文件,所有如果你的路径下有  XX/XX/XX/sdkName/pom-default.xml 就可以查找出来,但是如果是XX/XX/XX/sdkName/pom/pom-default.xml 就无法查找

所以我们想要找到pom-default.xml 文件,可以有以下几种方法

1.  def pomPath = findFiles(glob: 'sdkName/**/poms/pom-default.xml')

2. def pomPath = findFiles(glob: 'sdkName/**/pom-default.xml')

原文地址:https://www.cnblogs.com/estherSH/p/14177726.html