Проблема:
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 у мій файл 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' Отже, ви можете змінити файл складання gradle на
компілювати 'com.android.support.constraint: constraint-layout: 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'
}
Спочатку я спробував усе, що я прочитав у stackoverflow ... від оновлення gradle до версії XY, до оновлення ConstraintLayout до версії XY ... Я навіть оновив свої інструменти SDK та Android Studio до останньої версії ... але нічого не працювало.
Єдиним рішенням, яке працювало для мене, було те, що я видаляю бібліотеку ConstraintLayout з gradle та SDK, тоді я відкрив випадковий макет xml та в перегляді Дизайн в розділі Палітра пошуку ConstraintLayout . Якщо ви успішно видалили бібліотеку зі свого проекту, ви зможете встановити бібліотеку звідти, якщо двічі натиснути на елемент ConstraintLayout .
Це створило наступний рядок у моєму додатку build.gradle:
'com.android.support.constraint:constraint-layout:1.0.0-beta1'
У моєму проекті build.gradle у мене є таке:
classpath 'com.android.tools.build:gradle:2.2.2'
Android студія версії 2.2.2
Альфа-версія більше не доступна!
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
Для того, щоб переконатися, що у студійній версії 2.3 ви не побачите спаду біля макета обмеження в інструментах sdk, він за замовчуванням встановить останню версію
Щоб отримати бажану версію, поставте прапорець "Показувати деталі пакета та бум", тепер ви можете вибрати бажану версію, яку ви хочете встановити
градле 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, gradle від 3.3 до 4.6 та buildToolsVersion від 25.0.0 до 28.0.3.
Я також додав maven {url ' https://maven.google.com '} до сховищ Maven у файлі build.gradle на рівні проекту, і це вирішило мою проблему.
Я використовував com.android.support.constraint: constraint-layout: 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 до файлу build.gradle на рівні проекту для "app2". Репозиторій Google Maven можна додати, додавши "google ()" allprojects.repositories
у файл build.gradle на рівні проекту:
allprojects {
repositories {
jcenter()
google()
}
}
Оновіть залежність макета обмежень до відповідної версії з '1.0.0-alpha2'. У моєму випадку я змінився на наступне. компілювати 'com.android.support.constraint: обмеження-макет: 2.0.0-alpha5'