首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Gradle processResources eachFile删除空目录

在Gradle构建过程中,processResources任务用于处理资源文件。如果你想在构建过程中删除空目录,可以通过自定义任务来实现。

首先,创建一个自定义任务,用于查找并删除空目录:

代码语言:javascript
复制
import org.gradle.api.DefaultTask
import org.gradle.api.tasks.TaskAction
import java.nio.file.Files
import java.nio.file.Path
import java.nio.file.Paths

class DeleteEmptyDirs extends DefaultTask {
    @TaskAction
    void deleteEmptyDirs() {
        // 指定要检查的目录,可以根据需要修改
        def resourceDir = 'build/resources/main'

        Files.walk(Paths.get(resourceDir))
            .filter { Files.isDirectory(it) }
            .filter { !Files.list(it).findAny().isPresent() }
            .forEach { Files.deleteIfExists(it) }
    }
}

接下来,在build.gradle文件中应用这个自定义任务:

代码语言:javascript
复制
apply plugin: 'java'

repositories {
    mavenCentral()
}

dependencies {
    // ...
}

// 应用自定义任务
task deleteEmptyDirs(type: DeleteEmptyDirs)

// 将自定义任务添加到processResources任务之前执行
processResources.dependsOn deleteEmptyDirs

现在,在执行gradle build时,Gradle会在处理资源文件之前删除空目录。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券