错误:在锁定文件中发现意外的锁定协议。预期3,找到0


75

将Android Studio升级到1.3后,我无法再编译项目。我越来越Unexpected lock protocol found in lock file. Expected 3, found 0.。我尝试删除.gradle文件夹,但这不能解决问题。我还能做什么?

Answers:


64

我已经通过删除文件夹解决了

c:\ users \ [myusername] \ .gradle \ caches \ 2.14.1

重新打开Android Studio之后,一切都很好


6
我不确定我的项目正在使用哪个gradle版本。在文件->项目结构->项目(根据Android Studio 2.1.3)中
Raul Pinto 2016年

非常感谢@RaulPinto提供了这一关键信息。
camelCaseCoder

那是导入的老蚀项目。在将build sdk和目标sdk安排到build gradle中后,我得到了这个错误。然后我只是按了“清理项目”,然后在普通的“ build apk”之后错误消失了
CodeToLife

修复了在Android Studio 3.4.2下仍然可以运行的问题。清理不起作用,使高速缓存无效并重新启动不起作用。我删除了缓存中的所有文件夹,因此重新启动后花了几分钟时间进行下载。
FrankKrumnow

并没有真正的帮助,我删除了root @ nusik-ryzen:/root/.gradle/caches# rm -rf *的内容
Apartico公司首席执行官,19年

38

好的,这是一个非常轻巧的解决方案,包含以下步骤:

  • Ctrl + Alt + Shift + SFile-> Project Structure

  • 从左侧面板中选择项目

  • 现在在右侧面板中检查您的Gradle版本

  • 就我而言,我的Gradle版本3.3

  • 导航C:\用户\阿希什\ .gradle \缓存和删除您的摇篮版本- 3.3命名的文件夹。

  • 现在,重新启动或从工作区再次打开您的项目

问候语...您的问题已解决。


3
一种被低估的完全证明方法。谢谢@Ashish
Parth Anjaria

21

您必须从用户目录中删除/.gradle文件夹,而不是从project这是一个隐藏目录,如果您使用的是基于Linux的系统,则它位于/home/user/.gradle中,然后按“ alt” +”。显示隐藏的文件夹


1
你能帮我吗,我找不到.gardle文件夹,alt +。也不起作用
Progga Ilma,

您的操作系统是什么?
Warrocker '18年

1
不适合我的方法是删除此文件夹“ .gradle”,也请执行“使缓存无效/重新启动”,但不起作用可以请您帮助我
Waqar Vicky,

在ubuntu .gradle中已隐藏,您可以使用命令“ ls -a”在列表中看到它,将其删除即可关闭android studio并在家里运行“ sudo rm -rf .gradle”。
Tigran Babajanyan

19

进入本地文件项目并搜索“ .gradle”文件夹

擦除它并重新启动您的IDE


17

删除缓存文件夹需要花费很长时间,因为它具有超过200k的文件(超过3GB)。正如Ashish所提到的,可以快速浏览。

我也仅在一个应用程序中遇到了此错误。

完成步骤。

  1. 在您的项目中打开gradle-wrapper.properties文件。它位于Android结构的Gradle脚本中。如下图所示。

    在此处输入图片说明

  2. 在该文件中检查distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip。这里gradle版本是4.6。

在此处输入图片说明

3.因此该项目的所有缓存都将存储在您的中C:\Users\Your PC Name or User Name\.gradle\caches\4.6。如下图所示。

在此处输入图片说明

  1. 关闭您的android studio并删除4.6文件夹。删除后打开android studio。

就这样。我花了6个小时才弄清并删除了缓存文件夹。因此,我决定发布此答案。这样人们就不会浪费时间了。


但可能是此问题的根本原因
查理

1
我认为缓存文件已损坏,这就是为什么我们需要删除它们。
sushildlh

好的,因此我们已经建立了高速缓存文件,但已损坏,但可能导致高速缓存文件被破坏
Charles

没主意
sushildlh

2
@Charles对我来说,当我在Android Studio构建过程中计算机崩溃时,缓存文件被破坏了
juancamilo87

9

在android studio中,点击“无效的缓存/重新启动..”并确认。


这没有解决我的问题。实际上,现在我的IDE根本无法启动!
Vijay Chavda '16

6

我有同样的问题。删除项目的.gradle文件夹并不能解决问题。

我通过删除C:\Users\<username>\.gradle文件夹解决了问题,并使Studio重新刷新了整个gradle版本。我发现从升级路径安装了4个不同版本的gradle。


5
Delete C:\Users\user\.gradle\caches folder and restart the project.

3

所有这些解决方案都不适用于Android Studio 2.1。起作用的是我在项目文件夹中打开gradle-wrapper.properties并在下面的行中更改了gradle引用:

distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip

更改为:

distributionUrl=https\://services.gradle.org/distributions/gradle-2.13-all.zip

之后gradle升级,该应用开始运行!


3

在文件菜单上,单击无效缓存/重新启动。然后单击无效并重新启动。它将解决您的问题。

使缓存无效


简单有效的解决方案。感谢@Jakir
Parth Anjaria

但是我经常在同一个项目中遇到这个问题。打开项目几乎每天都会发生,为什么会这样呢?
Parth Anjaria

不确定。尝试重新定位该项目。您也可以尝试删除所有点(。)文件夹,然后将项目重新导入到Android Studio。(在此之前保持备份)
Jakir Hossain

1

我们已成功解决了此错误。在我的情况下,请转到您的项目位置,即F:=> PROJECT NAME => .gradle ..并删除了.gradle文件。这次gradle构建成功。


1

就我而言,由于机器更改而未设置GRADLE_USER_HOME。重置此env变量后,一切正常。


1

您不需要删除所有gradle文件。您只需要删除就C:\Users\(your user name)\.gradle\daemon\(gradle version)\registry.bin.lock可以了!


1

这发生在我的计算机冻结后,我不得不强迫它重新启动。为了解决这个问题,我运行了此命令,然后一切正常。无需重启Android Studio:

cd path/to/.gradle/
find . -name "*.lock" -delete 

1

当我的计算机死机并且不得不强制关机时,我在Android Studio 4.0.1中遇到了同样的问题。

我要解决的问题是从项目目录中删除.gradle文件夹,然后再次构建项目。

  1. 打开“项目”窗格(如果尚未打开)。
  2. 从下拉菜单中选择项目视图(非Android)
  3. 第一个文件夹(红色)将是.gradle,右键单击>删除。
  4. 再次生成该项目。

在此处输入图片说明


0
  1. 进入.gradle项目根目录下的文件夹。

  2. 在那里,您可能会看到几个版本。选择您在porject中使用的gradle版本。

  3. cd进入taskArtifacts文件夹。

  4. 清除cache.properties.lock文件。

最后,构建项目。希望能有所帮助。


0

以上都不对我有用....

您只需要转到文件->项目结构或按Ctrl + Alt + Shift + S

然后在左上角单击“项目”,确保您的Android插件版本Android Studio版本相同。

另外

您也可以创建一个新的Project并在Project视图下检查,最初您将在Android中。将视图更改为... Project-> gradle(注意..而不是.gradle only gradle)-> wrapper-> gradle-wrapper属性..打开此文件,您可以看到最后一行,即..

distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip

确保旧文件中的gradle版本也相同

看看我制作的有关此问题的YouTube视频

https://youtu.be/-Ngn4YvbKtw


0

以上解决方案均不适用于此错误。我刚开始这个项目,所以我真的不担心它的丢失。我完成了以下工作:

  1. 选择“文件\关闭项目”,项目关闭。
  2. 出现创建新项目的打开屏幕。
  3. 我从列表中删除了该项目,只是为了使其不显示在列表中。
  4. 创建了一个名称稍有不同的新项目。
  5. 运行新项目,效果很好。

0

-进入您的本地文件项目,然后搜索“ .gradle”文件夹,(该文件夹位于用户目录中而不是来自project的隐藏目录,如果您使用的是基于Linux的系统,则位于/home/user/.gradle然后按“ alt” +“。”以显示隐藏的文件夹,)

  • 擦除它并重新启动您的IDE

如果这不起作用,那么所有这些解决方案都不适用于Android Studio 2.1。起作用的是我在项目文件夹中打开gradle-wrapper.properties并在下面的行中更改了gradle引用:

distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip

更改为:

distributionUrl=https\://services.gradle.org/distributions/gradle-2.13-all.zip

之后gradle升级,该应用开始运行!


0

打开您先前的项目并打开文件> ProjectStructure>项目,检查此gradle版本,先前项目的android插件版本并将其设置为您的当前项目。然后单击无效/重新启动


0

对于在< Android Studio 3.1.2 >上有此问题的人。解决此问题后,我完成了本主题中的所有解决方案。但是,仅每种解决方案都不能解决我的问题。所以我结合了一些策略。


  1. 首先,我从Android Studio启动器列表中删除了该应用程序。
  2. 其次,我从.gradle(来自用户目录的FOLDER)中删除了所有内容。
  3. 第三,我再次导入项目(同步后,我再次收到错误)。
  4. 第四,在打开项目时,我使用了FILE菜单中的< Invalidate Cache / Restart >选项。

我希望这个解决方案也对您有用。


0

.gradle从用户目录中删除目录是不够的。确保也.gradle从项目目录中删除该目录。实际上,我将从项目开始,只有在这还不够的情况下才应在用户级别删除。


0

在android studio中,单击“文件”,然后单击“使缓存无效/重新启动”,然后确认。


0
  1. 转到文件->项目结构
  2. 选择项目
  3. 在右侧面板上更改Gradle版本

发生此问题时我使用5.6.4,并将其降级为5.1.1。同步项目,此后它应该可以工作。


0

从项目结构更改gradle版本对我有用

  1. 文件->项目结构
  2. 从左侧面板中选择项目
  3. 现在在右侧面板上更改您的Gradle版本

0

我在Ubuntu 16.04下发现了这个问题的根本原因。.gradle目录和项目目录都应具有适当的权限。我自己创建了这个目录,这就是为什么它们拥有更多受限权限的原因。我只是让Android Studio自己创建了这个目录,并且一切都按预期工作。


0

这里没有任何解决方案对我有用。对于任何可能遇到我的情况的人,这对我有用:

除了这里的步骤,我还

  1. 已删除 ~/.gradle/daemon/[GRADLE_VERSION]
  2. 已删除 ~/.gradle/wrapper/dists/gradle-[GRADLE_VERSION]-all
  3. 已删除 [PROJECT_PATH]/.gradle

重新启动Android Studio


-1

最重要的是,它不起作用。

  1. 关闭项目。
  2. 从项目清单中删除
  3. 再次重新导入该项目。(如果您有一个项目的整个源文件,则应清理先前的项目并再次提取该项目)
  4. 打开intellij,然后单击打开项目。
  5. 选择提取的文件夹/项目文件夹。

完成了

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.