Maven: ошибка сходимости зависимостей для com.android.support:support-annotations:28.0.0 - PullRequest
0 голосов
/ 02 июля 2019

Мы получаем эту ошибку при попытке включить в наш проект следующую зависимость:

<dependency>
      <groupId>com.android.support</groupId>
      <artifactId>support-fragment</artifactId>
      <version>28.0.0</version>
      <type>aar</type>
    </dependency>

мы вставили полный след сюда . насколько мы можем видеть, это говорит о том, что одна и та же сборка зависит от двух разных версий. как это возможно?

and
+-com.google.zxing:android:4.7.10
  +-com.android.support:support-fragment:28.0.0
    +-com.android.support:support-compat:28.0.0
      +-com.android.support:collections:28.0.0
        +-com.android.support:support-annotations:28.0.0
and
+-com.google.zxing:android:4.7.10
  +-com.android.support:support-fragment:28.0.0
    +-com.android.support:support-compat:28.0.0
      +-android.arch.lifecycle:runtime:1.1.1
        +-android.arch.lifecycle:common:1.1.1
          +-com.android.support:support-annotations:26.1.0

Как мы можем исправить эту ошибку?

Ответы [ 2 ]

0 голосов
/ 02 июля 2019

Вы всегда можете переопределить старую версию библиотеки, добавив библиотеку к своим зависимостям.Для вашей проблемы попробуйте переопределить, добавив зависимость support-annotations, например:

<dependency>
      <groupId>com.android.support</groupId>
      <artifactId>support-annotations</artifactId>
      <version>28.0.0</version>
      <type>aar</type>
</dependency>
0 голосов
/ 02 июля 2019

Попробуйте поместить этот код в конец вашего файла Gradle, где есть список зависимостей

configurations.all {
    resolutionStrategy.eachDependency { DependencyResolveDetails details ->
        def requested = details.requested
        if (requested.group == 'com.android.support' && !requested.name.contains('multidex')) {
            details.useVersion '28.0.0'
        }
    }
}
...