我如何告诉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/
您可以删除特定组或工件id的缓存,而不是删除整个gradle缓存,就像这里的一些答案所建议的那样。我在我的.bash_profile中添加了以下函数:
deleteGradleCache() {
local id=$1
if [ -z "$id" ]; then
echo "Please provide an group or artifact id to delete"
return 1
fi
find ~/.gradle/caches/ -type d -name "$id" -prune -exec rm -rf "{}" \; -print
}
用法:
$ deleteGradleCache com.android.support
然后,在下一次构建或重新同步时,gradle将重新下载依赖项。
这对我很管用。 通过取消文件>设置>Gradle>离线工作按钮,确保Gradle没有被设置为离线。
将其添加到构建的顶层。Gradle,很高兴有上面的依赖
configurations.all {
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
我确保我的依赖是这样写的:
implementation('com.github.juanmendez:ThatDependency:ThatBranch-SNAPSHOT') {
changing = true
}
之后,我打开Android Studio中的Gradle面板,点击蓝色圆圈箭头按钮。我总是能看到我的更新得到一个新的新鲜副本。
要刷新缓存的“释放”版本,唯一的选择是清除本地缓存。
rm -rf $HOME/.gradle/caches/
要刷新缓存的“快照”版本,可以:
./gradlew build --refresh-dependencies
对于Windows……为了让gradle重新下载特定的依赖项:
从下面的目录中删除要重新下载的依赖项: C:\Users\ %用户名% \模块2 \ \ .gradle \缓存文件- 2.1 删除该路径下的所有元数据目录: C:\Users\ %用户名% \模块2 \ \ .gradle \缓存元数据- * 在项目的根目录下运行gradle build(如果使用gradle wrapper,则运行gradlew build)。
注意:上述文件路径中的数字可能与您不同。
推荐文章
- 我如何解决错误“minCompileSdk(31)指定在一个依赖的AAR元数据”在本机Java或Kotlin?
- Android工作室如何运行gradle同步手动?
- Android Studio在创建新项目时卡住了Gradle下载
- 无法解析符号“AppCompatActivity”
- 在Mac OS X上安装/升级gradle
- 错误:执行失败的任务':app:compileDebugKotlin'。>编译错误。详细信息请参见日志
- Android Studio 3.0口味维度问题
- 如何设置gradle家同时导入现有的项目在Android工作室
- 执行com.android.build.gradle.internal.tasks时失败
- 错误:与依赖项“com.google.code.findbugs:jsr305”冲突
- 如何/何时生成Gradle包装文件?
- 构建被配置为优先选择设置存储库而不是项目存储库,但存储库“maven”是由构建文件“Build .gradle”添加的。
- “需要Gradle 2.10版本。”错误
- 在Android Studio 4.2中,Gradle任务不会显示在Gradle工具窗口中
- Android Studio -没有可调试的应用程序