如何确保gradle构建的processResources任务始终运行?

Tim*_*her 11 gradle

我们有一个奇怪的问题,即随机且不经常的,删除META-INF文件夹的compileJava任务和要启动的编译类,运行但processResources任务报告是最新的,即使META-INF目录显然不存在.

这给我们留下了很大的时间,因为没有applicationContext.xml,工件可能会让它一直生产!

对于我们来说,执行该任务的成本非常低,是否有可能强制它运行,无论如何?

rod*_*ion 13

也许有某种错误无法清除gradle缓存.一种可能的解决方案是首先强制任务通过运行来清理自己的输出cleanProcessResources.

如果这不起作用,那么尝试覆盖upToDateWhen任务输出的谓词,如下所示:

processResources.outputs.upToDateWhen{ false }
Run Code Online (Sandbox Code Playgroud)

但是我不知道这个API是否是永久性的.

  • 我当然希望是。这很棒。 (2认同)