如何在Gradle中生成资源文件

我的 Gradle 项目之一有 10 个子项目。对于 Gradle 任务中的每个项目,我想生成一个 Java 属性文件,该文件将指定项目名称,因为我需要在运行时知道项目名称。属性文件应该转到每个项目的资源目录。因为项目的数量可能会随着时间的推移而增长,我想不为每个项目添加一个资源文件,而是通过 Gradle 生成它。


例如,对于项目:custom:a我需要在资源目录中有一个project-info.properties文件,其内容是:


project=a

对于项目:custom:b我想要一个类似的project-info.properties文件:


project=b

如何生成文件并将其放入 Java 资源目录?


我尝试在所有项目中添加以下规则,但它似乎不再生成这些文件(也许我引入了一些重大更改):


processResources {

    def resourcesDir = sourceSets.main.output.resourcesDir

    resourcesDir.mkdirs()

    def contents = "projectInfo.project=$project.name"

    new File(resourcesDir, "project-info.properties").text = contents

}

编辑:文件应该在构建目录中生成,而不是在源代码中。


富国沪深
浏览 211回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java