【问题标题】:How to handle situation, if the file is being locked by gradle daemon如果文件被 gradle 守护进程锁定,如何处理这种情况
【发布时间】:2018-10-06 13:09:11
【问题描述】:

在运行 gardle 的应用程序processResources 任务时(将资源从源目录复制到目标目录,可能会对其进行处理)尝试删除构建文件夹中的git.properties 文件,

但是,在proceeResources 之前的某个任务中构建应用程序时,在运行时创建了相同的文件,但被 gradle 守护进程锁定,因此任务 proceeResources 无法处理它并以错误结束,

java.io.IOException: Unable to delete file: {projectWebappPath}\build\resources\main\git.properties
> Unable to delete file: {projectWebappPath}\build\resources\main\git.properties

在 SysinternalSuite 中,如果我在 windows 7 上运行程序 procExp.exe,我可以看到文件被 gradle daemon 锁定。

问题是:-

我该如何处理这种情况,我不知道,我正在尝试禁用守护程序,但不建议这样做。哪个也没有解决问题。

我在 3 天前就开始遇到这个问题,早些时候它工作正常,我不明白可能是什么原因,如果我在构建时尝试排除 processResources 任务,它会产生其他影响,所以真的不能这样做。

我正在使用 Windows 7,64 位操作系统,试图在 intellij 终端上运行 gradlew build

任何帮助或线索将不胜感激。

提前致谢。

【问题讨论】:

    标签: gradle build.gradle gradlew


    【解决方案1】:

    在 Windows 上,这可能是类似的:

    taskkill /F /IM gradlew.bat /T
    

    或 gradle 守护程序在那里使用的任何名称。

    您也可以使用 GUI 任务管理器终止停滞的实例。

    通常,它只能是守护程序的最后一个实例,它可能会锁定文件。还要查找*.lock 文件,这些文件在不同用户帐户下构建时可能无法删除。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多