Android Architecture Components: Gradle Sync Error For Dependency Version


Answer :

As @RedBassett mentions Support libraries depends on this lightweight import (runtime library) as explained at android developers documentation.

This is, android.arch.lifecycle:runtime:1.0.0 is spreading up in the dependency tree as a result of an internal api (transitive) import so in my case I only had to include extensions library as "api" instead of "implementation" so that it will override its version to the highest (1.1.1).

In conclusion, change

implementation "android.arch.lifecycle:extensions:1.1.1" 

to

api "android.arch.lifecycle:extensions:1.1.1" 

In your main build.gradle file

allprojects {     ...      configurations {         all {             resolutionStrategy {                 force "android.arch.lifecycle:runtime:1.1.1"             }         }     }  } 

This will enforce version 1.1.1


Apparently support-v4 was causing the conflict. In the case of this question, the Gradle dependency task wasn't working correctly, but for anyone else who runs into this issue:

./gradlew :app:dependencies will show the sub-dependencies used by your dependencies. Search the output of this command (changing app for your module name) for the dependency causing the conflict.


Comments

Popular posts from this blog

Are Regular VACUUM ANALYZE Still Recommended Under 9.1?

Can Feynman Diagrams Be Used To Represent Any Perturbation Theory?