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


当前回答

对于那些想知道在哪里运行gradle命令的人:

Open Android Studio 点击终端(你会在Android Studio的基础上找到它) 命令工具将打开 输入命令gradlew build——refresh-dependencies

其他回答

如果你使用的是最新版本的Gradle,你可以使用——refresh-dependencies选项。

./gradlew build --refresh-dependencies

你可以参考Gradle手册。

——refresh-dependencies选项告诉Gradle忽略已解析模块和工件的所有缓存条目。将对所有配置的存储库执行新的解析,重新计算动态版本,刷新模块,并下载工件。

删除该目录:

C:\Users\[username]\.gradle

如果你正在使用eclipse,如果你想强迫eclipse重新加载依赖项,你可以尝试下面的命令

gradlew clean cleaneclipse build eclipse --refresh-dependencies

可以删除缓存jar的文件夹。

在我的例子中,在Mac上,库被缓存在路径:

/ /用户/ MY_NAME / .gradle /缓存模块2 - 2.1 / cached-library-to-remove /文件

我删除了缓存的库文件夹(在上面的例子中是“cache -library-to-remove”),删除了我的项目的构建文件夹,并重新编译。 然后下载了新库。

你可以告诉Gradle重新下载构建脚本中的依赖项,方法是将依赖项标记为“正在更改”。Gradle将每24小时检查一次更新,但是这可以使用resoltionstrategy DSL进行配置。我发现在SNAPSHOT或NIGHTLY构建中使用它很有用。

configurations.all {
    // Check for updates every build
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}

扩展:

dependencies {
    implementation group: "group", name: "projectA", version: "1.1-SNAPSHOT", changing: true
}

压缩:

implementation('group:projectA:1.1-SNAPSHOT') { changing = true }

我在这个论坛找到了这个解决方案。