ปัญหา:
Error:Could not find com.android.support.constraint:constraint-layout:1.0.0-alpha2.
Required by:
myapp:app:unspecified
พื้นหลัง: Android Studio 2.2 P 1
ปัญหา:
Error:Could not find com.android.support.constraint:constraint-layout:1.0.0-alpha2.
Required by:
myapp:app:unspecified
พื้นหลัง: Android Studio 2.2 P 1
คำตอบ:
สนับสนุนห้องสมุดสำหรับ ConstraintLayout
ไม่สามารถติดตั้ง / อัปเดต
เพียงเปิดPreferences
> Appearance & Behavior
> System Settings
> Android
และย้ายไปที่SDK Tools
แท็บ ตรวจสอบฟิลด์ต่อไปนี้และติดตั้ง
jmartinalonso
คำตอบด้านล่าง มันกำลังขยายคำตอบนี้
Preferences
เป็นจริงFile
> Settings
บน Windows
./sdkmanager "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta4"
จาก android-tools / bin
ในกรณีของฉันมีการติดตั้งไลบรารีสนับสนุนสำหรับ ConstraintLayout แต่ฉันกำลังเพิ่ม ConstraintLayout Library รุ่นที่ไม่ถูกต้องในไฟล์ build.gradle ของฉัน เพื่อที่จะดูว่ารุ่นที่คุณมีการติดตั้งไปPreferences
> Appearance & Behavior
> >System Settings
Android SDK
ตอนนี้คลิกที่SDK Tools
แท็บในบานหน้าต่างด้านขวา ตรวจสอบแสดงรายละเอียดแพ็คเกจและจดบันทึกเวอร์ชัน
ในที่สุดคุณสามารถเพิ่มรุ่นที่ถูกต้องในbuild.gradle
ไฟล์
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha9'
testCompile 'junit:junit:4.12'
}
การแก้ไขคือการอัพเดทปลั๊กอิน android gradle ใน build.gradle ของคุณ
สิ่งนี้ควรใช้งานได้: classpath 'com.android.tools.build:gradle:2.2.0-alpha2'
หรือคุณสามารถใช้ล่าสุด: classpath 'com.android.tools.build:gradle:2.2.0-alpha3'
ปัญหาของฉันคือเครื่องมือ SDK ได้อัปเดตเป็นเวอร์ชันล่าสุดในกรณีของฉันคือ 1.0.0-alpha9 แต่ในการไล่ระดับสีฉันถูกตั้งค่าเป็น
คอมไพล์ 'com.android.support.constraint: constraint-layout: 1.0.0-alpha8' ดังนั้นคุณสามารถเปลี่ยนไฟล์ build gradle เป็น
รวบรวม 'com.android.support.constraint: ข้อ จำกัด เค้าโครง: 1.0.0-alpha9' หรือคุณตรวจสอบ "แสดงรายละเอียดแพ็คเกจ" ในเครื่องมือแก้ไขเครื่องมือ SDK และติดตั้งรุ่นที่คุณต้องการ ดูหน้าจอด้านล่าง ภาพของเครื่องมือ SDK
ตรวจสอบให้แน่ใจว่าคุณได้ประกาศที่เก็บ maven.google.com ในไฟล์ build.gradle ในระดับโมดูล
repositories {
maven {
url 'https://maven.google.com'
}
}
2. เพิ่มไลบรารีเป็นการพึ่งพาในไฟล์ build.gradle เดียวกัน:
dependencies {
compile 'com.android.support.constraint:constraint-layout:1.0.2'
}
ฉันอัปเดตปลั๊กอิน gradle Android ของฉันเป็น2.2.0-alpha4
และการพึ่งพาเค้าโครงข้อ จำกัด1.0.0-alpha3
และดูเหมือนว่าจะใช้งานได้ในขณะนี้
ก่อนอื่นฉันลองทุกอย่างที่ฉันได้อ่านใน stackoverflow ... จากการอัปเดต gradle ไปเป็นเวอร์ชั่น XY ไปจนถึงการอัพเดต ConstraintLayout เป็น XY version ... ฉันยังอัปเดตเครื่องมือ SDK และ Android Studio เป็นเวอร์ชันล่าสุด ... แต่ไม่มีอะไรทำงาน
ทางออกเดียวที่ทำงานสำหรับฉันคือการที่ฉันลบห้องสมุด ConstraintLayout จาก gradle และ SDK แล้วผมเปิดรูปแบบ XML สุ่มและในมุมมองออกแบบภายใต้Paletteค้นหาส่วนสำหรับConstraintLayout หากคุณลบไลบรารีออกจากโครงการของคุณสำเร็จแล้วคุณจะสามารถติดตั้งไลบรารีได้จากที่นั่นหากคุณดับเบิลคลิกที่องค์ประกอบConstraintLayout
ที่ได้สร้างบรรทัดถัดไปใน app ของฉัน build.gradle:
'com.android.support.constraint:constraint-layout:1.0.0-beta1'
ในโครงการ build.gradle ของฉันฉันมีสิ่งนี้:
classpath 'com.android.tools.build:gradle:2.2.2'
Android studio เวอร์ชัน 2.2.2
รุ่นอัลฟ่าไม่สามารถใช้งานได้อีกต่อไป!
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
เพียงเพื่อให้แน่ใจว่าใน studio version 2.3 คุณจะไม่เห็น dropdown ใกล้ข้อ จำกัด layout ในเครื่องมือ sdk โดยค่าเริ่มต้นจะทำการติดตั้ง version ล่าสุด
หากต้องการรับเวอร์ชันที่ต้องการให้ทำเครื่องหมายในช่องที่แสดงรายละเอียดแพ็คเกจและบูมคุณสามารถเลือกเวอร์ชันที่คุณต้องการติดตั้งได้
gradle com.android.tools.build:gradle:2.2.0-alpha6
การพึ่งพาเค้าโครงข้อ จำกัด com.android.support.constraint:constraint-layout:1.0.0-alpha4
ทำงานได้สำหรับฉัน
สำหรับฉันมันเป็นปัญหาที่แตกต่างอย่างสิ้นเชิง เมื่อฉันติดตั้งการพึ่งพาข้อ จำกัด ในเครื่องมือ SDK เครื่องมือจะเขียนลงในไดเรกทอรีที่ไม่ถูกต้อง นั่นคือ
/home/${USER}/Android/Sdk/extras/+m2repository+/com/.../constraint
แทน
/home/${USER}/Android/Sdk/extras/+android+/+m2repository+/com/.../constraint
วิธีการรักษา:
เพียงคัดลอก1.0.0-alpha*
ไดเรกทอรีลงในพา ธ หลัง
ในขณะที่อัปเดตเครื่องมือ SDK กล่องปรับขนาดที่นำเสนอด้วยเวอร์ชันโครงร่างข้อ จำกัด ที่จะทำการติดตั้ง โปรดทราบว่าและอัปเดตการอ้างอิงของคุณตามนั้น ในกรณีของฉันมันกำลังติดตั้ง beta3
ฉันเปลี่ยนการพึ่งพาเหมือนด้านล่าง หลังจากนั้นก็ใช้งานได้
รวบรวม 'com.android.support.constraint: ข้อ จำกัด เค้าโครง: 1.0.0-beta3'
ในกรณีของฉันฉันใช้ AS 2.3 และฉันต้องการใช้ ConstraintLayout 1.1.3 ล่าสุด แต่รุ่นล่าสุดในการตั้งค่า> ลักษณะและพฤติกรรม> การตั้งค่าระบบ> Android คือ 1.0.2
หากต้องการใช้ ConstraintLayout 1.1.3 ฉันได้อัปเดต AS ของฉันจาก 2.3 เป็น 3.2.1 ล่าสุดในปัจจุบัน com.android.tools.build:gradle จาก 2.2.2 เป็น 3.2.1 ไล่ระดับจาก 3.3 เป็น 4.6 และ buildToolsVersion จาก 25.0.0 เป็น 28.0.3
ฉันยังเพิ่ม maven {url ' https://maven.google.com '} ลงในที่เก็บ Maven ในไฟล์ build.gradle ระดับโครงการและนั่นช่วยแก้ไขปัญหาของฉัน
ฉันใช้ com.android.support.constraint: ข้อ จำกัด เค้าโครง: 1.0.0-alpha2 กับ classpath 'com.android.tools.build:gradle:2.1.0' มันทำงานเหมือนมีเสน่ห์
ไม่แน่ใจว่าฉันสายเกินไปหรือไม่ แต่ในกรณีที่บางคนยังคงมีข้อผิดพลาดหลังจากอัปเดต ConstraintLayout และ Solver บนเครื่องมือ SDK บางทีโซลูชันนี้อาจช่วยได้: ข้อผิดพลาด: (30, 13) ไม่สามารถแก้ไขได้: com.android support.constraint: ข้อ จำกัด รูปแบบ: 1.0.0-alpha4
ในกรณีของฉันฉันมีโครงการหลายโมดูลที่เรียกว่า "app" และ "sdk" โมดูล "sdk" เป็นโมดูลที่ฉันเพิ่มไลบรารีโครงร่างข้อ จำกัด ฉันได้รับข้อผิดพลาดเมื่อฉันพยายามรวม "sdk" ลงในโครงการหลายโมดูลใหม่ที่เรียกว่า "app2" วิธีแก้ไขคือเพื่อให้แน่ใจว่าฉันได้เพิ่ม Google Maven Repository ไปยังไฟล์ build.gradle ระดับโครงการสำหรับ "app2" สามารถเพิ่มที่เก็บ Google Maven ได้โดยใส่ "google ()" ไว้allprojects.repositories
ในไฟล์ build.gradle ในระดับโครงการ:
allprojects {
repositories {
jcenter()
google()
}
}
มันมีอยู่ใน androidx เป็นแพคเกจดังต่อไปนี้
implementation "androidx.constraintlayout:constraintlayout:2.0.0-alpha1"
อัปเดตการพึ่งพาโครงร่างข้อ จำกัด ของคุณเป็นเวอร์ชันที่เกี่ยวข้องจาก '1.0.0-alpha2' ในกรณีของฉันฉันเปลี่ยนเป็นดังต่อไปนี้ รวบรวม 'com.android.support.constraint: ข้อ จำกัด เค้าโครง: 2.0.0-alpha5'
ปัญหาที่คล้ายกันแก้ไขได้โดยการติดตั้ง Android Studio อีกครั้ง