Gradle sourceSet 的行结束字符

Gradle line ending char for sourceSets

我的 build.gradle 文件包含以下内容:

sourceSets {
   main { output.resourcesDir = "build/app" }
}

这运行良好,src/main/resources 的内容已正确复制到 build/app 文件夹中。

但是,我有一些资源(脚本)需要强制使用行结束符。我需要总是强制 LF。换句话说,需要确保我们永远不会有任何 CRLF.

Question: is it possible to filter resources included via a sourceSets?

以下效果很好:

import org.apache.tools.ant.filters.FixCrLfFilter

processResources {
    filesMatching('**/*.sh') {
        filter(FixCrLfFilter.class,
        eol:FixCrLfFilter.CrLf.newInstance("lf"))
    }
    filesMatching('**/*.properties') {
        filter(FixCrLfFilter.class,
        eol:FixCrLfFilter.CrLf.newInstance("lf"))
    }
    filesMatching('**/*.xml') {
        filter(FixCrLfFilter.class,
        eol:FixCrLfFilter.CrLf.newInstance("lf"))
    }
}