Meaning of asterisk and arrow symbol in gradle dependency tree

I gradlew

ran the command to get the gradle dependency tree.

gradlew.bat app: dependencies

In the output, I get different types of symbols attached to each dependency:

 com.twotoasters.servos:util-otto:1.0.0
 com.squareup.okhttp:okhttp:2.4.0 (*)
 com.android.support:recyclerview-v7:23.2.0 -> 25.0.0

      

Some dependencies do not have any symbol, some of them have (*)

and ->

.

What do these symbols mean?

I tried searching but couldn't find any help.

+3


source to share


2 answers


(*)

stands next to a dependency that has already been imported by another artifact, resulting in duplication.

At the end of the output, ./gradlew :app:dependencies

you can see this:enter image description here

->

stands next to a dependency that has already been imported through a different artifact but with a newer version . Gradle prefers newer version.



Hence, it com.android.support:recyclerview-v7:23.2.0 -> 25.0.0

means that the version 25.0.0

has already been imported, but especially that the artifact depends on an older version 23.2.0

.

See Egor Andreevich 's explanation from his Making the Most of your Gradle Builds conversation from Droidcon Italy 2017.

+5


source


->

means from version 23.2.0

to 25.0.0

its useful when running gradle offline, so it will use the first available cached version (*)

im not sure but i think this is for downloading and compiling the whole next family of libraries (core, etc), there is also +

which is used instead of a version code that will use the latest version that is available



0


source







All Articles