Groovy 渐变复制任务-筛选闭包返回null时的null指针

Groovy 渐变复制任务-筛选闭包返回null时的null指针,groovy,ant,gradle,Groovy,Ant,Gradle,声明如果我从闭包返回null,则应该删除该行,但是当我这样做时 filter { String line -> line.startsWith('-') ? null : line } 我明白了 Caused by: java.lang.NullPointerException at org.gradle.api.internal.file.copy.LineFilter.getTransformedLine(LineFilter.java:67) at org.gradle.a

声明如果我从闭包返回
null
,则应该删除该行,但是当我这样做时

filter { String line ->
    line.startsWith('-') ? null : line
}
我明白了

Caused by: java.lang.NullPointerException
at org.gradle.api.internal.file.copy.LineFilter.getTransformedLine(LineFilter.java:67)
at org.gradle.api.internal.file.copy.LineFilter.ensureData(LineFilter.java:76)
at org.gradle.api.internal.file.copy.LineFilter.read(LineFilter.java:83)
at org.gradle.api.internal.file.copy.LineFilter.read(LineFilter.java:93)
at org.apache.tools.ant.util.ReaderInputStream.read(ReaderInputStream.java:117)
at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:1025)
at org.gradle.api.internal.file.AbstractFileTreeElement.copyTo(AbstractFileTreeElement.java:58)
at org.gradle.api.internal.file.copy.DefaultFileCopyDetails.copyTo(DefaultFileCopyDetails.java:94)
at org.gradle.api.internal.file.AbstractFileTreeElement.copyFile(AbstractFileTreeElement.java:93)
at org.gradle.api.internal.file.AbstractFileTreeElement.copyTo(AbstractFileTreeElement.java:74)
... 90 more

请注意,如果我放置一个空字符串而不是null,它将留下一个空行。因此,1)为什么它没有按照文件规定工作?2) 如果我做错了smth,如何使此过滤器工作

以防万一(使用包装器):

看看你的版本,2.4,我是说,不是现在的版本,现在是最新的2.7。它只包含:

根据提供的闭包添加内容筛选器。每行都将调用闭包(去掉行尾),并且应该返回一个字符串来替换该行

没有关于空的消息。因此,这种行为似乎是在最新版本中添加的。由于javadocs,它是从2.6版开始引入的


如果你需要它工作,你必须使用一个更新的版本或者使用一个自定义的基于Ant的任务,就像你需要的正则表达式中提到的那样。

你试过什么都不返回吗?而不是null请注意,如果我将空字符串替换为null,则会留下一个空行。
------------------------------------------------------------
Gradle 2.4
------------------------------------------------------------

Build time:   2015-05-05 08:09:24 UTC
Build number: none
Revision:     5c9c3bc20ca1c281ac7972643f1e2d190f2c943c

Groovy:       2.3.10
Ant:          Apache Ant(TM) version 1.9.4 compiled on April 29 2014
JVM:          1.7.0_79 (Oracle Corporation 24.79-b02)
OS:           Mac OS X 10.10.5 x86_64