簡體   English   中英

錯誤:更改 minSdkVersion 時等待鎖定構建文件的構建腳本類緩存超時

[英]Error:Timeout waiting to lock buildscript class cache for build file when change minSdkVersion

我嘗試在Android Studio build.gradle (Module: app) 中更改minSdkVersion並得到下一個錯誤:

Error:Timeout waiting to lock buildscript class cache for build file 'E:\pathtoproject\app\build.gradle' (C:\Users\Administrator\.gradle\caches\2.2.1\scripts\build_f00bwdji3qxl7urq5chsbakgv\ProjectScript\buildscript). It is currently in use by another Gradle instance.
Owner PID: unknown
Our PID: 4592
Owner Operation: unknown
Our operation: Initialize cache
Lock file: C:\Users\Administrator\.gradle\caches\2.2.1\scripts\build_f00bwdji3qxl7urq5chsbakgv\ProjectScript\buildscript\cache.properties.lock

這是什么錯誤? 如何更改minSdkVersion

這聽起來像是與https://issues.gradle.org/browse/GRADLE-2795有關。

解決此問題的最簡單方法是刪除C:\\Users\\Administrator\\.gradle\\caches 有一個cache.properties.lock持有一個阻止您運行腳本的全局鎖。

對於 Mac OSX,該文件夾位於~/.gradle/caches Android Studio 應該顯示導致鎖定的文件的正確路徑。

文件 > 使緩存無效/重新啟動

對我有用!!!

在此處輸入圖片說明

鎖定文件在那里是因為其他一些 gradle 進程(通常是守護進程)正在使用緩存。 您可以停止所有 gradle 進程以釋放鎖

gradle --stop

https://docs.gradle.org/current/userguide/gradle_daemon.html#sec:stopping_an_existing_daemon

1.檢查java.exe的多個實例是否正在運行然后找出它們為什么在我的情況下運行我已經打開命令提示符它需要java實例。 打開任務管理器並結束cmd.exe任務如果您不希望它進一步發生,請從環境變量中刪除路徑並使用嵌入式 android studio JDK。

2.Delete lock file in /.gradle/cache goto task manager 並關閉java.exe的所有實例在android studio中點擊文件無效緩存/重啟

關閉android studio並刪除緩存中的任何內容

對我來說,它通過殺死 PID 解決了問題

  • Windows taskkill /F /PID pid_number
  • Linux kill -9 pid_number

這對我有用。

殺死 gradle 進程的所有實例。

ps -ef | grep gradle

刪除“鎖定文件”

rm C:\\Users\\Administrator\\.gradle\\caches\\2.2.1\\scripts\\build_f00bwdji3qxl7urq5chsbakgv\\ProjectScript\\buildscript\\cache.properties.lock

謝謝,

什么對我有用:

projectPath=[yourProjectPath]
find $projectPath/.gradle -name '*.lock' -delete

你也可以一一刪除:

gradleVersion=[yourProjectGradleVersion]
projectPath=[yourProjectPath]
rm -f $projectPath/.gradle/$gradleVersion/taskHistory/taskHistory.lock $projectPath/.gradle/$gradleVersion/fileHashes/fileHashes.lock $projectPath/.gradle/$gradleVersion/fileContent/fileContent.lock $projectPath/.gradle/$gradleVersion/javaCompile/javaCompile.lock $projectPath/.gradle/buildOutputCleanup/buildOutputCleanup.lock 

從 / 中刪除 .gradle 文件夾並從項目中重新同步 gradle。

您的build.gradle文件可能包含minSdkVersion多個語句。 可能在defaultConfig{}塊和productFlavors{}塊中。 確保您只在構建文件中聲明 minSdkVersion一次

有時刪除 filehash.lock 文件是值得注意的,它會拋出無法刪除文件的錯誤。 所以執行以下步驟

對於 Windows 機器:

打開任務管理器(Ctrl-Alt-Delete 並檢查進程)

-> 如果您運行兩個 android studio 實例,請關閉一個(結束任務)

-> 然后關閉 OpenJDK Platform Binary

-> Gradle 現在在 AndroidStudio 上同步,它現在可以工作了

對我來說,唯一有效的是刪除 android 文件夾中的這些東西:

  • {應用名稱}.iml
  • 。我死了/
  • .gradle/buildOutputCleanup/

從現在起 2 周后為自己發布此信息

問題:如果您打開兩個 Android Studio,並且其中兩個使用相機服務來捕獲圖像,那么您將面臨這個問題。

解決方案:關閉 One Android Studio。

對於像我這樣的新手,第一次遇到這種情況,無法刪除.lock文件或.gradle文件夾,

在 windows 10 或其他系統中,使用安全模式重新啟動電腦,(windows 鍵 + R ---> msconfig ----> 選擇引導,以安全模式引導----> 重新啟動)然后刪除文件,(這應該刪除文件和文件夾)

然后在正常模式下,重新啟動 android studio 並同步 gradle 以下載適當的版本(希望該項目現在可以正常工作)

"Lock file: C:\Users\Administrator\.gradle\caches\2.2.1\scripts\build_f00bwdji3qxl7urq5chsbakgv\ProjectScript\buildscript\cache.properties.lock"

您應該刪除此擴展名中的文件。 然后您將看到問題已解決。 我遇到了同樣的問題。

我有同樣的問題:

在此處輸入圖片說明

要解決此問題,請使用kill -9命令kill -9保留日志的進程

日志完美說明您的問題涉及哪個進程,以便您檢索相關的PID或文件路徑

在這個例子中,命令將是:

kill -9 0739

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM