我正在学习有关Gradle如何解决远程依赖关系的更多信息。所以我做了一个小实验。我首先删除依赖项缓存(以及我知道的许多其他缓存内容)
$ rm -rf ~/.gradle/caches/
然后我运行一个构建,寻找“模块不存在”
$ ./gradlew app:buildDebug --debug| grep "Detected non-existence of module"
基于order of my listed repositories和项目中的依赖项,我有很多“缺失”存储库。但是令我困惑的是,Gradle似乎经常检查同一存储库中的相同依赖项。仅举一个例子,如果我缩小结果范围:
$ ./gradlew app:buildDebug --debug| grep -e "Detected non-existence of module 'org.jetbrains.kotlin:kotlin-stdlib-common:1.3.71"
然后,我仍然看到Gradle试图解决对Google回购的这种依赖,大约是50次。为什么会这样呢?我不明白什么?