Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何确保gradle构建的processResources任务始终运行?_Gradle - Fatal编程技术网

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

如何确保gradle构建的processResources任务始终运行?,gradle,Gradle,我们遇到了一个奇怪的问题:compileJava任务会随机且不经常地删除META-INF文件夹和要启动的编译类,但它会运行,而processResources任务报告的是最新的,即使META-INF目录显然不存在 这给我们带来了很大的麻烦,因为这些工件可能在不使用applicationContext.xml的情况下一直进入生产阶段 对我们来说,运行该任务的成本很低,不管发生什么,是否有可能强制它运行?也许有某种无法清除gradle缓存的bug。一种可能的解决方案是首先通过运行cleanProce

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

这给我们带来了很大的麻烦,因为这些工件可能在不使用applicationContext.xml的情况下一直进入生产阶段


对我们来说,运行该任务的成本很低,不管发生什么,是否有可能强制它运行?

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

如果不起作用,请尝试覆盖任务输出的
UpdateWhen
谓词,如下所示:

processResources.outputs.upToDateWhen{ false }

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

Gradle 1.0-milestone-5和更高版本将类文件和资源放在不同的目录中(build/classes和build/resources)。如果这能解决您的问题,而不使用变通方法,那就太好了。我当然希望是这样。太棒了。