为什么grep无法在我的Groovy依赖项上找到匹配项?

dak*_*kin 1 groovy buildr

有谁知道为什么下面的代码返回一个空数组?谢谢.

groovyc_deps = Buildr::Groovy::Groovyc.dependencies
groovy_jar = groovyc_deps.grep /.*groovy.*\.jar/
p groovy_jar # => []
Run Code Online (Sandbox Code Playgroud)

Ale*_*ert 5

因为Groovyc.dependencies返回一个数组Artifact,而不是字符串.

试试以下,

groovyc_deps = Buildr::Groovy::Groovyc.dependencies
groovy_jar = groovyc_deps.select { |a| a.to_s =~ /.*groovy.*\.jar/ }
Run Code Online (Sandbox Code Playgroud)

在与正则表达式匹配之前将工件转换为字符串.