【问题标题】:Gradle :Could not create service of type FileHasherGradle:无法创建 FileHasher 类型的服务
【发布时间】:2017-07-18 22:12:30
【问题描述】:

我正在使用 Gradle 构建一个 java 项目。 当我运行任何任务(组装、测试)时。 我随机收到一个错误:

Could not create service of type FileHasher using 
GradleUserHomeScopeServices.createCachingFileHasher()

以前有人遇到过同样的问题吗?

Gradle V:3.5

java 8

我正在使用 java 插件。

谢谢,

【问题讨论】:

  • 作为一种解决方法,我删除了锁定文件。它有效
  • 我建议将this answer标记为选中的

标签: gradle


【解决方案1】:

我也遇到了同样的问题,因为我在构建过程中不小心按了 ctrl+z,然后错误和你的一样。

我尝试删除锁定文件,但没有解决问题。

然后我通过ps aux | grep gradle找到所有与gradle相关的过程,然后kill -9 <pid>全部找到。构建恢复正常。

【讨论】:

  • 这可行,但也有点残酷。也可以运行 gradle --stop 让守护进程优雅地停止 - docs.gradle.org/current/userguide/…
  • 活动监视器帮助识别 ps aux | 之后的任务grep gradle,这让我确信我正在杀死正确的任务。
【解决方案2】:

在您的终端中输入:

./gradlew build

结果是:

FAILURE: Build failed with an exception.

* What went wrong:
Could not create service of type FileHasher using GradleUserHomeScopeServices.createCachingFileHasher().
> Timeout waiting to lock file hash cache (/Users/zra/.gradle/caches/4.1-rc-1/fileHashes). It is currently in use by another Gradle instance.
  Owner PID: 17571
  Our PID: 26055
  Owner Operation: 
  Our operation: 
  Lock file: /Users/xxx/.gradle/caches/4.1-rc-1/fileHashes/fileHashes.lock

现在做:

rm /Users/xxx/.gradle/caches/4.1-rc-1/fileHashes/fileHashes.lock

然后重新构建。

P.S 用你的用户名替换 xxx。

【讨论】:

    【解决方案3】:

    对我有用的是删除上面答案中建议的锁定文件:rm /Users/xxx/.gradle/caches/4.1-rc-1/fileHashes/fileHashes.lock,并通过运行命令杀死空闲进程

    ./gradlew --status
    

    它会生成一个 gradle 进程列表,其状态类似于

      PID STATUS   INFO
     23580 IDLE     5.2.1
     23860 IDLE     5.2.1
     19058 STOPPED  (stop command received)
    

    然后通过kill <PID> 杀死其中一个空闲进程并再次运行 gradle 构建。

    【讨论】:

      【解决方案4】:

      一个简单的原因是 gradle 守护程序没有使用相同的环境变量启动。 我在更改 gradle 用户主页时遇到了同样的问题。

      只需停止守护进程:

      gradle --stop
      

      【讨论】:

      • 谢谢你,这有效。不像流行的回答说删除锁定文件。
      【解决方案5】:

      使用以下命令更改.gradle/ 的所有权:

      sudo chown -R <USERNAME> .gradle/ 
      

      【讨论】:

        【解决方案6】:

        我在其他地方找不到此信息,发布以防万一:

        我在 ChromeOS(在 Chromebook 上)上运行 Android Studio 时遇到了同样的问题。

        我与 Linux 共享了一个 Google Drive 文件夹(通过选择一个文件夹,右键单击并选择 与 Linux 共享)并在那里创建了我的项目。构建失败并出现此错误,删除锁定文件对我没有任何作用。

        通过在“Linux 文件夹”下重新创建项目为我解决了问题。

        【讨论】:

          【解决方案7】:

          如果操作系统是 Windows。 试试这个: gradlew build 查找 PID 进程

          并在CMD中执行这个命令

          TASKKILL /F /PID  #PID
          

          【讨论】:

          • 这篇文章是实用的
          【解决方案8】:

          就我而言,我将整个项目保存在由Google Drive Stream 管理的文件夹中。由于这是一个非常基本的文件系统,Android Studio(或 Git 或 Gradle,我不知道是哪个)试图在 FS 上做一些 Google Drive Stream 不允许的事情。

          我只是将项目移动到我的本地驱动器上并修复了它!

          【讨论】:

          • 我对存储在 WSL2 目录中的项目有同样的问题。我猜 NFS 不支持所需的锁定方法。
          【解决方案9】:

          几天前这对我来说也是同样的问题,现在只有您或用户阅读此解决方案。

          1. 卸载完整的android studio(意思是-'从控制面板卸载后,删除Android Studio的文件夹') 要删除的文件夹:

            C:\Program Files -> Android, C:\Users{用户文件夹名} -> .android & .gradle & {其他与Android Studio相关的文件夹}

          2. .exe 重新安装并确保您的 PC 已连接到互联网并以适当的速度连接。

          3. 下载其中提及的所有 SDK 文件,并仅在 Android Studio 中继续下载。 [请勿从其他来源下载-否则会显示错误,请小心]

          4. 点击新项目并选择空项目并给出名称并点击完成。

          您将重定向到另一个窗口,然后开始安装 GRADLE,因此您应该拥有高互联网连接,并且它会自动下载,现在您可以开始了。

          【讨论】:

            【解决方案10】:

            我遇到了同样的问题,解决方案是使用正确的用户登录,然后运行 ​​gradle。我使用无权运行任务的用户登录。

            【讨论】:

              【解决方案11】:
              • 我刚刚将一个项目从 Download 文件夹(在 Mac 上)移动到另一个文件夹
              • 如果您尝试构建内部项目 - 尝试转到根项目并调用
              ./gradlew <moduleName>:<command>
              

              【讨论】:

                【解决方案12】:

                在我的情况下最简单的解决方案是运行

                在linux的情况下

                sudo ./gradlew bundleRelease
                

                如果是 windows 则使用具有最高权限的用户登录。

                因为权限不足导致出现这个错误

                【讨论】:

                  猜你喜欢
                  • 2019-06-24
                  • 2020-09-08
                  • 1970-01-01
                  • 2020-08-23
                  • 1970-01-01
                  • 2020-05-12
                  • 1970-01-01
                  • 2016-10-04
                  • 1970-01-01
                  相关资源
                  最近更新 更多