Инструмент Android Jetifier преобразует библиотеки поддержки в версии RC
Похоже, что в процессе перехода на Android X инструмент Jetifier конвертирует некоторые сторонние библиотеки в версии RC (gradle-4.6).
| +--- com.facebook.android:facebook-common:4.34.0
| | | +--- com.facebook.android:facebook-core:4.34.0 (*)
| | | +--- com.google.zxing:core:3.3.0
| | | +--- androidx.legacy:legacy-support-v4:1.0.0-rc01
| | | | +--- androidx.core:core:1.0.0-rc01 -> 1.0.1 (*)
| | | | +--- androidx.media:media:1.0.0-rc01
| | | | | +--- androidx.annotation:annotation:1.0.0-rc01 -> 1.0.0
| | | | | +--- androidx.core:core:1.0.0-rc01 -> 1.0.1 (*)
| | | | | \--- androidx.versionedparcelable:versionedparcelable:1.0.0-rc01 -> 1.0.0 (*)
| | | | +--- androidx.legacy:legacy-support-core-utils:1.0.0-rc01 -> 1.0.0 (*)
| | | | +--- androidx.legacy:legacy-support-core-ui:1.0.0-rc01 -> 1.0.0 (*)
| | | | \--- androidx.fragment:fragment:1.0.0-rc01 -> 1.0.0 (*)
| | | +--- androidx.appcompat:appcompat:1.0.0-rc01 -> 1.0.2 (*)
| | | +--- androidx.cardview:cardview:1.0.0-rc01 -> 1.0.0 (*)הר
| | | \--- androidx.browser:browser:1.0.0-rc01
| | | +--- androidx.core:core:1.0.0-rc01 -> 1.0.1 (*)
| | | +--- androidx.annotation:annotation:1.0.0-rc01 -> 1.0.0
| | | +--- androidx.interpolator:interpolator:1.0.0-rc01 -> 1.0.0 (*)
| | | +--- androidx.collection:collection:1.0.0-rc01 -> 1.0.0 (*)
| | | \--- androidx.legacy:legacy-support-core-ui:1.0.0-rc01 -> 1.0.0 (*)
Есть ли решение, которое я могу заставить принимать только стабильные (фиксированные) версии?
1 ответ
Что ж, после копания в исходном коде jetifier кажется, что версия jetifier поставляется с gradle-4.6, это alpha10:
/gradle/m2repository/com/android/tools/build/jetifier/jetifier-processor/1.0.0-alpha10/jetifier-processor-1.0.0-alpha10.jar /gradle/m2repository/com/android/tools/build/jetifier/jetifier-ядро / 1.0.0-alpha10 / jetifier-ядро-1.0.0-alpha10.jar
Локальный файл сопоставления в этом пакете jetifier преобразует некоторые библиотеки поддержки в версии RC.
Добавление обновленных зависимостей jetifier решает эту проблему (top build.gradle):
classpath 'com.android.tools.build.jetifier:jetifier-core:1.0.0-beta02'
classpath 'com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta02'
А вот результаты для дерева зависимостей Facebook:
+--- com.facebook.android:facebook-common:4.34.0
| | | +--- com.facebook.android:facebook-core:4.34.0 (*)
| | | +--- com.google.zxing:core:3.3.0
| | | +--- androidx.legacy:legacy-support-v4:1.0.0
| | | | +--- androidx.core:core:1.0.0 -> 1.0.1 (*)
| | | | +--- androidx.media:media:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.0.1 (*)
| | | | | \--- androidx.versionedparcelable:versionedparcelable:1.0.0 (*)
| | | | +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
| | | | +--- androidx.legacy:legacy-support-core-ui:1.0.0 (*)
| | | | \--- androidx.fragment:fragment:1.0.0 (*)
| | | +--- androidx.appcompat:appcompat:1.0.0 -> 1.0.2 (*)
| | | +--- androidx.cardview:cardview:1.0.0 (*)
| | | \--- androidx.browser:browser:1.0.0
| | | +--- androidx.core:core:1.0.0 -> 1.0.1 (*)
| | | +--- androidx.annotation:annotation:1.0.0
| | | +--- androidx.interpolator:interpolator:1.0.0 (*)
| | | +--- androidx.collection:collection:1.0.0 (*)
| | | \--- androidx.legacy:legacy-support-core-ui:1.0.0 (*)