Сбой сборки Gradle после добавления ядра ktx

Когда я добавляю зависимость core-ktx в файл build.gradle моего приложения, мои сборки gradle завершаются с ошибкой AAPT2 error: check logs for details. Кроме того, это говорит о том, что в values.xml отсутствуют два атрибута. Этот файл находится в папке .gradle внутри моего пользовательского каталога. когда я добавляю android.enableAAPT2=false в свойства своего проекта, сборка завершается ошибкой из-за того, что эта опция устарела, поэтому я хочу избежать этого. Ниже приведены описания ошибок двух resource not found errors:

error: resource android:attr/fontVariationSettings not found. Message{kind=ERROR, text=error: resource android:attr/fontVariationSettings not found., sources=[C:\Users\Marc.gradle\caches\transforms-1\files-1.1\appcompat-v7-26.1.0.aar\b6d4f8d4d33639ae469eaec181e24176\res\values\values.xml], original message=, tool name=Optional.of(AAPT)}

Когда я добавляю разные библиотеки ktx, все в порядке. Он строится правильно, и я даже могу импортировать androidx.collections! Как без ошибок добавить библиотеку core-ktx?

Сбой сборки Gradle после добавления ядра ktx

4
0
1 387
1

Ответы 1

Вы используете «AndroidX», который доступен только в том случае, если вы настроили свои compileSdkVersion 'android-P' и targetSdkVersion 28. Затем в AndroidStudio перейдите на Refactor -> Refactor to AndroidX, и теперь все должно работать нормально :).

Спасибо! Я загрузил Android Studio 3.2, и он вроде работает. Он строится, но Android Studio немного глючит. В любом случае, большое спасибо за ваш ответ, очень ценю ваши усилия :) «Редактировать: Ой, это работает, НАКОНЕЦ. Спасибо, чувак, такие как ты - настоящие герои!

Zonico 23.05.2018 16:14

Другое дело, что я думаю, что одна из библиотек appcompat была выпущена со ссылками на некоторые атрибуты платформы, которые были добавлены только в API 28 (android P), и когда вы их используете, вы сталкиваетесь с той же ошибкой. В обоих случаях решение @ReneFerrari работает. :)

Izabela Orlowska 23.05.2018 18:04

Другие вопросы по теме