如何在gradle中从一个位置复制到另一个位置时即时修改文件

Posted

技术标签:

【中文标题】如何在gradle中从一个位置复制到另一个位置时即时修改文件【英文标题】:How to modify the file on the fly while copying from one location to other in gradle 【发布时间】:2020-08-13 11:45:41 【问题描述】:

我想在制作 .jar 的同时修改文件的内容。为此,我正在尝试修改“processResources”任务,如下所示 -

processResources
    println 'process resources..'
    from('./dist')
        into('static')
    


这里我在“dist”文件夹下有一些 html 文件,我想在将其复制到 .jar 时对其进行修改 我已经复制了文件,但在复制时没有得到任何修改文件的解决方案。

这是 Spring Boot 项目以及 gradle 构建工具。

非常感谢任何帮助!

【问题讨论】:

【参考方案1】:

Gradle 提供了许多开箱即用的选项,用于在 Copy 操作期间更改文件。

我建议查看relevant documentation,尤其是filter 块,它可以逐行查看文件内容。

【讨论】:

已经完成了,但文档似乎很长,找不到我正在寻找的确切解决方案。【参考方案2】:

找到了很好的文档,其中详细介绍了 gradle 中的文件操作- https://www.oreilly.com/library/view/gradle-beyond-the/9781449373801/ch01.html

我的问题的解决方法是这样的>>

processResources
    println 'process resources..'
    from('./dist')

        into('static')

        filter
            line -> line.replace("old-string","new-string")
             
    


【讨论】:

以上是关于如何在gradle中从一个位置复制到另一个位置时即时修改文件的主要内容,如果未能解决你的问题,请参考以下文章

如何将文件从一个位置复制到另一个位置?

如何将具有属性/权限的目录从一个位置复制到另一个位置?

如何使用 phonegap 将文件从一个位置移动/复制到另一个位置

如何在 Google Adwords 中将位置从一个广告系列复制到另一个广告系列?

如何将 chrome 书签从单个桌面上的不同用户配置文件复制到另一个网络位置

如何将具有特定大小的字符复制到另一个图像中与原始图像相同的位置?