我已经运行gradlew
命令来获取gradle依赖树。
gradlew.bat app:dependencies
在输出上我得到了与每个依赖关系相关的不同类型的符号:
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
某些依赖项没有任何符号,有些依赖于(*)
和->
。
这些符号是什么意思?
我试图搜索这个,但没有找到任何帮助。
答案 0 :(得分:10)
->
位于依赖项的旁边,该依赖项已经通过其他工件导入,从而导致重复。
在com.android.support:recyclerview-v7:23.2.0 -> 25.0.0
输出结束时,您可以看到:
25.0.0
位于依赖项的旁边,该依赖项已通过其他工件导入,但使用较新的版本。 Gradle会更喜欢新版本。
因此,23.2.0
意味着已导入Launcher.LaunchFolderAsync()
版本,但特别是该工件依赖于较旧的<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- most important is order of layers -->
<!-- Bottom right side 2dp Shadow -->
<item >
<shape android:shape="rectangle">
<solid android:color="#000000" />
</shape>
</item>
<!-- Bottom 2dp Shadow -->
<item>
<shape android:shape="rectangle">
<solid android:color="#BEBEBE" />
</shape>
</item>
<!-- White Top color -->
<item android:bottom="3px" android:right="3px" android:top="3px" android:left="3px">
<shape android:shape="rectangle">
<solid android:color="#FFFFFF" />
</shape>
</item>
版本。
请参阅Egor Andreevici来自Droidcon Italy 2017的"Making the most of your Gradle Builds"演讲中的+解释。
答案 1 :(得分:0)
->
表示从版本23.2.0
到25.0.0
在离线模式下运行gradle时非常有用,因此它将使用第一个可用的缓存版本
(*)
我不确定,但我认为它是用于下载和编译以下所有库系列(核心等)...还有+
代替版本代码,它将使用最新版本