แคชอ้างอิงของ Gradle อาจเสียหาย (บางครั้งเกิดขึ้นหลังจากหมดเวลาการเชื่อมต่อเครือข่าย)


90

ฉันได้รับข้อผิดพลาดประเภทนี้จะแก้ไขได้อย่างไร

Error:Unable to load class 'org.gradle.tooling.internal.protocol.test.InternalTestExecutionConnection'.
Possible causes for this unexpected error Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
Re-download dependencies and sync project (requires network)The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem.
Stop Gradle build processes (requires restart)Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project.In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.

โปรดตรวจสอบคำตอบของฉัน ในกรณีของฉันมันเป็นปัญหาเส้นทาง JDK stackoverflow.com/a/44583007/3265444
Ajji

คำตอบ:


174

ฉันอัปเดต Android Studio เป็น 2.3 และขอให้ฉันอัปเดตปลั๊กอิน gradle เป็น 3.3 ซึ่งสร้างปัญหากับโครงการที่กำลังทำงานอยู่ ฉันได้ใช้โซลูชัน Stack ทั้งหมดแล้วและไม่มีอะไรได้ผลสำหรับฉันยกเว้นวิธีแก้ปัญหานี้: ฉันเปลี่ยน URL การแจกจ่ายของฉันใน gradle-wrapper.properties ด้วยอันนี้

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

(รายการลิงก์ถาวรที่นี่: https://services.gradle.org/distributions/ )

โปรเจ็กต์ของฉันเริ่มทำงานแล้ว แต่ขอให้ฉันอัปเดตเป็นgradle build tools 25.0.0ซึ่งฉันทำเช่นนั้น ทุกอย่างเรียบร้อยดี :)

  1. ไปที่ส่วนโครงการและเลือกเมนู gradle scripts
  2. ภายใต้สคริปต์เมนูเลือก gradle -wrapper.properties
  3. จากนั้นแทนที่ distributionUrl = https: //services.gradle.org/distributions/gradle-2.2-all.zip ด้วย "distributionUrl = https: //services.gradle.org/distributions/gradle-3.4.1-all.zip"

ใส่คำอธิบายภาพที่นี่ หมายเหตุ: การกระจายการไล่ระดับสีจะเปลี่ยนไปขึ้นอยู่กับเวอร์ชันของสตูดิโอ Android


6
โซลูชันที่สมบูรณ์แบบได้ผลสำหรับฉันหลังจากค้นหามาหลายวัน ขอบคุณ.
Franklyn

1
พบ gradle-wrapper.properties ที่ไหน ทั้งหมดที่ฉันเห็นคือไฟล์ jar
portfoliobuilder

ในลำดับชั้นโฟลเดอร์ Gradle ของโปรเจ็กต์
Taimur Khan

1
ขอบคุณ! แต่ปัญหายังคงมีอยู่หลังจากเริ่มต้นทุกโครงการใหม่ มีการแก้ไขถาวรหรือไม่?
Oniya Daniel

2
สำหรับใครก็ตามที่อัปเดตสิ่งนี้ในอนาคตสามารถดูรายการเวอร์ชัน Gradle ได้ที่นี่: services.gradle.org/distributionsเพียงคลิกขวาและบันทึกตำแหน่งลิงก์เพื่อใช้ String ในไฟล์ gradle ของคุณ
PGMacDesign

49

ตรวจสอบให้แน่ใจว่าคุณมีการเชื่อมต่ออินเทอร์เน็ตแล้ว:

1. สำหรับผู้ใช้ Windowไปที่> C:\Users\username\.gradle\wrapper\dists

2. สำหรับผู้ใช้ Linux ไปที่$HOME/.gradle (~/.gradle)และ / หรือ (ภายใต้โครงการเฉพาะ) <PROJECT_DIR>/.gradle

3. ลบไฟล์ gradle ที่มีปัญหา (เช่นโฟลเดอร์ซิปหายไปโดยไม่มีไฟล์ที่แยกออกมา)

4. ซิงค์โปรเจ็กต์กับไฟล์ gradle


3
ในกรณีของฉันอินเทอร์เน็ตถูกตัดออกในขณะที่ดาวน์โหลด Gradle การคลิก "ลองอีกครั้ง" ไม่ได้ทำอะไรเลย (บน Android Studio 3.1.3) การลบC:\Users\username\.gradle\wrapper\distsโฟลเดอร์เป็นการแก้ไขและอนุญาตให้ดาวน์โหลดอีกครั้ง
ub3rst4r

17

ลบไฟล์ที่เสียหาย

ข้อผิดพลาดนี้เกิดขึ้นเมื่อไฟล์ Gradle ไม่ได้ดาวน์โหลดอย่างสมบูรณ์หรือเสียหายจากสาเหตุอื่นดังนั้นเราจึงต้องดาวน์โหลดไฟล์อีกครั้ง วิธีง่ายๆคือลบไฟล์เก่าใน

C:\Users\username.gradle\wrapper\dists

และสร้างโครงการใหม่ Android Studio จะดาวน์โหลดไฟล์ใหม่โดยอัตโนมัติ


ขอบคุณสำหรับการแบ่งปันมันล้มเหลวในการดาวน์โหลดกับฉันเสมอดังนั้นแม้ว่าฉันจะเปลี่ยนเวอร์ชัน แต่ก็ไม่ช่วยอะไรได้ แต่การลบไฟล์แล้วลองอีกครั้งก็ใช้งานได้ขอบคุณ
Mousa Alfhaily

15

ดูบทแนะนำ https://www.youtube.com/watch?v=u92_73vfA8M

หรือ

ทำตามขั้นตอน:

  1. ไปที่เบราว์เซอร์ใดก็ได้

  2. พิมพ์ gradle แล้วกด Enter

คุณสามารถระบุเวอร์ชันใดก็ได้ที่คุณต้องการหลังจากไฟล์

คำหลักไล่ระดับ

ฉันกำลังดาวน์โหลด gradle 3.3

  1. https://services.gradle.org/distributions คลิกที่ลิงค์นี้ซึ่งอยู่ในคำอธิบายโดยตรงหากคุณต้องการ

  2. คลิกที่ gradle 3.3 all.zip

  3. รอให้การดาวน์โหลดเสร็จสิ้น

  4. เมื่อการดาวน์โหลดเสร็จสิ้นให้แตกไฟล์ไปยังตำแหน่ง

c: // ผู้ใช้ / ชื่อพีซีของคุณ /.gradle/wrapper/dists

  1. รอจนกว่าการสกัดจะใช้เวลา 5 นาทีจึงจะเสร็จสมบูรณ์

  2. ตอนนี้เปิดโครงการของคุณใน android studio

9. ไปที่ file> settings> bulid, exec, deployment> gradle

  1. ตอนนี้เปลี่ยนใช้ gradle เริ่มต้นเป็น

ใช้ gradle Distributn ในท้องถิ่น

เลือกตำแหน่งที่คุณดึง gradle 3.3.zip

C: \ Users \ ชื่อพีซีของคุณ. gradle \ wrapper \ dists \ gradle-3.3

  1. คลิกตกลง

  2. ตอนนี้การสร้างเริ่มต้นอีกครั้งและ

คุณสามารถเห็นได้ว่าการสร้างสำเร็จแล้วและข้อผิดพลาดได้รับการแก้ไขแล้ว


คำตอบนี้ควรครอบคลุมทุกขั้นตอนของปัญหา
JuLes

ทำไมเราถึงต้องการเบราว์เซอร์?
IgorGanapolsky

เพื่อดาวน์โหลดไฟล์ gradle ในเครื่องสำหรับงานสร้างที่ตามมาในเครื่อง
Manoj Selvin

7

หากคุณตั้งค่า gradle ด้วยตนเองตรวจสอบให้แน่ใจว่าโครงการ build.gradle verison เข้ากันได้กับมัน ดูต่อไปนี้เป็นตัวอย่าง

build.gradle ของโครงการ

dependencies {
        classpath 'com.android.tools.build:gradle:2.3.2'
    }

การตั้งค่าการไล่ระดับด้วยตนเอง

การตั้งค่าการไล่ระดับด้วยตนเอง


6

กรุณาลบโฟลเดอร์ทั้งหมดภายใต้ใน /.graddle/version/

นี่คือวิธีที่ฉันแก้ไขของฉัน โชคดี


4

ลองขั้นตอนถัดไปเพื่อ "รีเฟรช" IDE ของคุณ (android studio)

1. ให้ Gradle สร้างไฟล์ที่สร้างอัตโนมัติของคุณใหม่โดยคลิกสร้าง | สร้างใหม่
2. ลองเลือกไฟล์ | ไม่ถูกต้องแคช / รีสตาร์ท


2
หากไม่ได้ผล - โปรดระบุบันทึก Gradle ของคุณหลังจากดำเนินการนี้
Nir Duan

3

ฉันแก้ไขปัญหานี้โดยดาวน์โหลด graddle เวอร์ชันปัจจุบันจากลิงก์ที่ให้ ดาวน์โหลด graddle เวอร์ชันล่าสุดซึ่งอาจเป็น graddle 3.3

จากนั้นในขั้นตอนต่อไปฉันเข้าถึง. graddle / wrapper / dists dirctory จากโฮมไดเร็กทอรีบน Mac ของฉันหลังจากแสดงไฟล์ระบบที่ซ่อนอยู่และลบโฟลเดอร์เวอร์ชัน previuos ที่อยู่ที่นั่น

ตอนนี้ฉันใส่โฟลเดอร์เวอร์ชันล่าสุดที่ดาวน์โหลดมาหลังจากคลายการบีบอัดที่นั่น ตอนนี้รีสตาร์ท Android studio และปัญหาได้รับการแก้ไขแล้ว


2

คุณสามารถลองสิ่งนี้

  1. ขั้นแรกเปิด Android Studio ของคุณ> เปิดโครงการที่คุณกำลังทำอยู่
  2. คลิกที่ File> Settings> Build, Execution, Deployment> Gradle
  3. ในการตั้งค่าระดับโปรเจ็กต์มี 2 ตัวเลือกในการซิงค์การไล่ระดับสีโดยใช้ค่าเริ่มต้นหรือภายในเครื่อง
  4. ตอนนี้เปลี่ยนจากค่าเริ่มต้นเป็นการกระจายแบบโลคัล> gradle Home

  5. เลือกเส้นทางบนคอมพิวเตอร์ของคุณ

C: \ Program Files \ Android \ Android Studio \ gradle \ gradle-4.1

  1. คลิกตกลง

  2. ตอนนี้การสร้างเริ่มต้นอีกครั้งควรแก้ไข


2

ไปที่ "C: \ Users \ .gradle \ caches \" ลบไฟล์ทั้งหมดในโฟลเดอร์ จากนั้นซิงค์ Gradle และสร้างโครงการใหม่


ขอขอบคุณ. อย่างน้อย 4 ชั่วโมงฉันพยายามแก้ปัญหานี้ทุกวิธีใน stackoverflow ล้มเหลวยกเว้นสิ่งนี้
ฎีกา

2

หากคุณใช้ Ubuntu ก่อนอื่นคุณต้องยกเลิกการซ่อนไฟล์ทั้งหมดจากโฮมไดเร็กทอรีของคุณหรือที่โฟลเดอร์สตูดิโอ Android ของคุณอยู่:

  1. ไปที่โฮมไดเร็กทอรีของคุณและยกเลิกการซ่อนไฟล์ทั้งหมดโดยใช้ctrl + h
  2. คุณพบโฟลเดอร์. gradle
  3. ภายใน. gradle -> wrapper
  4. คุณสามารถพบโฟลเดอร์distsดังนั้นลบโฟลเดอร์distsนี้
  5. สร้างโครงการใหม่กว่าไฟล์ Gradle ที่ดาวน์โหลดซ้ำ
  6. คองโกคุณสร้างโครงการสำเร็จ

1

ตรวจสอบการตั้งค่า distributionUrl ใน gradle-wrapper.properties ฉันเปลี่ยน https เป็น http แล้วปัญหาของฉันได้รับการแก้ไขแล้ว



1

เพียงแค่นำเข้าโครงการอีกครั้ง :) ฉันพยายามล้างแคชและรีเฟรชการอ้างอิงไม่ได้ผล แต่ล้มเหลว


ฉันต้องลบและนำเข้าโมดูลของฉันอีกครั้ง
James B


1
  1. เปิด C: \ Users \ Username.gradle \ wrapper \ dists \

  2. เปิดโฟลเดอร์ gradle ล่าสุดเช่นgradle-4.1-rc-1-all

    คุณจะพบโฟลเดอร์สุ่มชื่อ936kh1brdchce6fvd2c1o8t8x

  3. ดาวน์โหลดไฟล์ zip ที่มีชื่อคล้ายกัน

    เช่น: https://downloads.gradle.org/distributions/gradle-4.1-rc-1-all.zip

  4. บันทึกไว้ในโฟลเดอร์นี้

  5. รีสตาร์ท Android Studio

    มันจะแตกโฟลเดอร์ zip โดยอัตโนมัติและ Error จะชัดเจน


1

ในที่สุดก็แก้ปัญหานี้

หากคุณเพียงแค่คัดลอกไฟล์เวอร์ชันใหม่ไปยังโฟลเดอร์เก่าและลบไฟล์คุณอาจต้องเจอกับคำถามเดียวกันกับฉัน

วิธีแก้ปัญหา:

  1. ทำให้แน่ใจว่าคุณได้บันทึกการตั้งค่าทั้งหมดของคุณ
  2. ปิด AS ลบไฟล์ทั้งหมดในเวอร์ชันผสมของคุณ
  3. แตกเวอร์ชันใหม่ไปยังโฟลเดอร์ว่างของคุณ

มันใช้ได้กับฉัน


ทำงานให้ฉัน แอปถูกนำไปใช้งานผ่านบริการตนเองซึ่งไม่ต้องกังวลกับการล้างไดเรกทอรีเก่าก่อน ขอให้พวกเขาแก้ไขปัญหา ขอขอบคุณ!
Steven L

1

บางทีคุณสามารถวิ่ง./gradlew build -sในเทอร์มินัล stacktrace จะแสดงให้คุณเห็นว่าผิดพลาดตรงไหน


ในกรณีของฉันฉันพบว่าที่เก็บข้อมูลหนึ่งของฉันล้มเหลวทำให้การดาวน์โหลดการพึ่งพา gson ล้มเหลว
Scott Wang

1
คำสั่งนี้ช่วยฉันค้นหาไฟล์ gradle ที่ถูกต้อง
Joey Chong

1

สำหรับฉันฉันกำลังโคลนโปรเจ็กต์จาก github ซึ่งใช้เวอร์ชั่นของ gradle ที่สูงกว่าที่ฉันติดตั้งไว้ ฉันมีสองทางเลือก:

  1. เปิด gradle.wrapper distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zipคุณสมบัติของโครงการที่คุณมีที่ประสบความสำเร็จในการสร้างและคัดลอกบรรทัดที่ระบุว่า ใช้สิ่งนี้เพื่อแทนที่ค่าเดียวกันในโครงการที่ล้มเหลว ที่ควรทำเคล็ดลับ

  2. บิวด์ของคุณอาจยังล้มเหลวหากเวอร์ชัน gradle ที่ใช้สร้างโปรเจ็กต์สูงกว่าที่คุณเพิ่งเพิ่ม สำหรับสิ่งนี้คุณควรอัปเดตเวอร์ชัน gradle เป็นเวอร์ชันล่าสุด



1

มีคำตอบมากมายสำหรับคำถามนี้ แต่มีบางส่วนที่ช่วยได้ ฉันต้องการให้คำตอบที่ถูกต้องและอัปเดต

แคชอ้างอิงของ Gradle อาจเสียหาย (บางครั้งเกิดขึ้นหลังจากหมดเวลาการเชื่อมต่อเครือข่าย)

ข้อผิดพลาดนี้เกิดขึ้นเมื่อคุณเชื่อมต่ออินเทอร์เน็ตไม่ดีหรือทำให้คอมพิวเตอร์เข้าสู่โหมดสลีปในขณะที่ Android Studio กำลังดาวน์โหลดการอ้างอิงที่จำเป็น

วิธีแก้ไขปัญหานี้

  1. ค้นหาเวอร์ชัน Gradle ของโครงการ คุณจะพบว่าในgradle-wrapper.propertiesในdistributionUrlการกระจาย gradle ของฉันคือhttps\://services.gradle.org/distributions/gradle-6.5-all.zipหมายความว่าgradle-6.5-all.zipจะต้องดาวน์โหลดและตอนนี้มันเสียหายเพราะหมดเวลาการเชื่อมต่อ ให้ค้นหาโฟลเดอร์นี้และลบสิ่งนี้
  2. ไปที่.gradleโฟลเดอร์นั้นไปwrapperแล้วdistsแล้วหาโฟลเดอร์ที่ตรงกับชื่อรุ่น gradle ที่จำเป็นต้องใช้ในการดาวน์โหลด ในกรณีของฉันคือgradle-6.5-all.zipเลือกโฟลเดอร์นี้และลบทิ้ง
  3. ตอนนี้ซิงค์โปรเจ็กต์และตรวจสอบให้แน่ใจว่าคุณมีการเชื่อมต่ออินเทอร์เน็ตที่ดีและการตั้งค่าที่จะป้องกันไม่ให้ระบบของคุณเข้าสู่โหมดสลีปขณะดาวน์โหลดบางสิ่ง

1

หากคุณเห็นข้อผิดพลาดนี้ใน Android Studio 4.1 พร้อม Gradle 6.5 คุณควรย้ายกลับไปที่

classpath 'com.android.tools.build:gradle:4.0.2'

ด้วยเหตุผลบางอย่าง

classpath 'com.android.tools.build:gradle:4.2.0'

ทำงานไม่ถูกต้อง


0

หากคุณได้อัปเดต android studio ของคุณแล้วให้ไปที่ FILE, Project Structure, Project จากนั้นตรวจสอบรุ่น gradle ก่อนหน้านั้นให้ตรวจสอบเวอร์ชัน gradle ของคุณใน C: \ Program Files \ Android \ Android Studio \ gradle และตรวจสอบเวอร์ชันว่าตรงกันหรือไม่จากนั้นซิงค์อีกครั้งให้เปลี่ยนเวอร์ชัน gradle ใน android studio และซิงค์อีกครั้ง


0

ฉันมีปัญหาคล้าย ๆ กันหลังจากโคลนAnySoftKeyboardและเปิดใน Android Studio สิ่งที่ทำงานให้ฉันถูกลบโฟลเดอร์และจากนั้นทำความสะอาดโครงการผ่านทางรายการเมนูAynSoftKeyboard/gradleBuild > Clean Project

ดังนั้นลองลบYourProject/gradleโฟลเดอร์และล้างโปรเจ็กต์เพื่อทริกเกอร์ Gradle sync

หวังว่าจะใช้ได้กับกรณีของคุณ


0

ดาวน์โหลดgradleจากที่นี่สำหรับ OS ของคุณและแตกไฟล์และวางโฟลเดอร์ด้านในลงใน installLocation / gradle

กว่าใน Android Studio Goto File> Settings> bulid, exec, deployment> gradle และเลือก local gradle option และระบุเส้นทางไฟล์ของ gradle ที่ดาวน์โหลดมาใหม่ของคุณและกด ok มันใช้งานได้ :)



0

ฉันมีปัญหานี้ฉันเพิ่งลบทุกสิ่งที่เกี่ยวข้องกับ android ใน c: // user / your pc name / และมันใช้งานได้


ฉันมีปัญหาเดียวกันและเพิ่งลบทุกอย่าง แต่ยังคงได้รับข้อผิดพลาดเดียวกัน
Savita Sharma

0

หากเกิดขึ้นหลังจากอัปเกรดAndroid Studioอาจมีสาเหตุมาจาก buildtool, Update ที่ล้าสมัยAndroid SDK BuildTools


0

ในบางครั้งปัญหาคือไฟล์ gradle wrapper ภายในไฟล์โครงการของคุณ เปิดไฟล์ gradle โปรเจ็กต์ปัจจุบันของคุณและลบไฟล์ gradle wrapper.zip จากนั้นซิงค์โปรเจ็กต์ซึ่งจะใช้งานได้


0

นี่เป็นสถานการณ์ของฉัน: ฉันต้องใช้ Android Studio เวอร์ชันอื่น (3.2.1) และเวอร์ชัน Gradle คือ 4.6 ด้วยเหตุนี้ฉันจึงดาวน์โหลด Android Studio เวอร์ชัน. zip ตอนแรกมันใช้ไม่ได้แม้ว่าฉันจะสร้างโปรเจ็กต์ใหม่ แต่ Gradle ก็ไม่ทำงาน แต่หลังจากการวิจัยและความช่วยเหลือจากโพสต์นี้ฉันได้ทำสิ่งต่อไปนี้:

  1. ฉันไปที่เส้นทางไฟล์ gradle (android-studio \ gradle) แล้วลบทิ้ง gradle-4.6 ทั้งหมด
  2. หลังจากนั้นฉันไปที่gradle-wrapper.propertiesและได้รับ Gradle เวอร์ชันที่ฉันต้องการ (gradle-4.6-all.zip)
  3. ฉันไปที่ไซต์ gradleและมองหาเวอร์ชันที่ฉันต้องการ
  4. ดาวน์โหลดและแตกไฟล์ลงในเส้นทางไฟล์ gradle ของ Android Studio ดูขั้นตอนที่ 1
  5. ฉันไปที่การตั้งค่า Android Studio (ไฟล์ / การตั้งค่า / Gradle) และเปลี่ยนตัวเลือก "Use default gradle wrapper (recommended)" เป็น"Use local gradle distribution"ท้องถิ่น"
  6. ฉันเลือกเส้นทางที่ฉันดาวน์โหลดเวอร์ชัน Gradle นั่นคือขั้นตอนที่ 4 และใช้การเปลี่ยนแปลง
  7. ในกรณีนี้ฉันใช้ตัวเลือก "Invalidate Cache / Restart" (ไฟล์ / "Invalidate Cache / Restart")
  8. หลังจากนั้นฉันก็ใช้ "Sync project และ Gradle files" และใช้งานได้!

อย่างไรก็ตามฉันใช้ Android Studio 3.2.1 เวอร์ชัน zip ฉันมีปัญหาเดียวกันเมื่อพยายามสร้างโครงการด้วย Android Studio รุ่นเก่า

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.