我如何告诉gradle从存储库中重新下载依赖项?


当前回答

要刷新缓存的“释放”版本,唯一的选择是清除本地缓存。

rm -rf $HOME/.gradle/caches/

要刷新缓存的“快照”版本,可以:

./gradlew build --refresh-dependencies

其他回答

如果您正在使用Intellij,您可以右键单击根项目,然后选择刷新gradle依赖项。

你可以这样做

https://marschall.github.io/2017/04/17/disabling-gradle-cache.html

引用自禁用Gradle构建缓存

当你经常使用Gradle构建>个大型项目时,Gradle构建缓存可能是一个很棒的东西。然而,如果只是偶尔构建开源>项目,它很快就会变得很大。 要禁用Gradle构建缓存,请在~/.gradle/ Gradle .properties中添加以下代码行 org.gradle.caching = false 可以清除现有缓存 rm -rf $HOME/.gradle/caches/ rm -rf $HOME/.gradle/wrapper/

删除所有缓存会重新下载所有依赖项。所以它需要很长时间,这是无聊的事情等待一次又一次重新下载所有的依赖。

我怎么能解决这个问题下面的方式。

只需删除需要刷新的组。

例如:如果我们想要刷新com.user.test组

rm -fr ~/.gradle/caches/modules-2/files-2.1/com.user.test/

然后从构建中删除依赖项。Gradle和重新添加它。 然后它将刷新我们想要的依赖项。

以上的解决方案对我都不起作用。

如果你使用IntelliJ,解决这个问题的方法就是简单地刷新所有Gradle项目:

这对我很管用。 通过取消文件>设置>Gradle>离线工作按钮,确保Gradle没有被设置为离线。

将其添加到构建的顶层。Gradle,很高兴有上面的依赖

configurations.all {
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}

我确保我的依赖是这样写的:

implementation('com.github.juanmendez:ThatDependency:ThatBranch-SNAPSHOT') {
    changing = true
}

之后,我打开Android Studio中的Gradle面板,点击蓝色圆圈箭头按钮。我总是能看到我的更新得到一个新的新鲜副本。