Gradle 每次编译时都检查依赖包的快照版本

610 阅读1分钟

在团队协作的时候,可能你会依赖别人编写的快照版本依赖;当别人更新了依赖包后,我们需要及时的使用最新的包来做集成,这需要我们每次编译时都检查私有仓库中最新的包,下面是详细的配置样例

环境

下面是我的操作环境

软件版本
gradle7.3 +
javajdk17

依赖包生命周期管理

首先我们需要设置依赖包的生命周期

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }

    all {
        // 分别设置eDynamicVersions和ChangingModules的生命周期
        // https://docs.gradle.org/current/dsl/org.gradle.api.artifacts.ResolutionStrategy.html
        resolutionStrategy.cacheDynamicVersionsFor 10, 'minutes'
        resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
    }
}

其次,我们在编译的时候需要指定参数

当你不需要检查私有仓库中的依赖包的版本时,可以使用./gradlew build来编译,它能利用编译缓存速度最快;当你需要检查并使用最新的依赖包,那么你可以使用./gradlew build --refresh-dependencies,这样就能及时的先下载私有仓库的依赖包并编译.