【问题标题】:gradle plugin and its dependenciesgradle 插件及其依赖项
【发布时间】:2020-06-27 03:49:09
【问题描述】:

我想了解我的本地缓存 (.gradle/caches/modules-2/files-2) 是如何构建的。我擦除了本地缓存,有一个带有构建文件的 java 项目,其中我没有声明任何依赖项。我只声明了一个插件'java',运行构建并且我的缓存充满了一堆库,我看到了以漏洞而闻名的 log4j v1.2.12 和 guava v17。我将我的 gradle 和 gradle wrapper 升级到 6.5 版本,删除了我的缓存并运行 ./gradlew build --refresh-dependencies 相同的 log4j 和 guava 相同的版本再次加载。 我的理解是本地缓存从构建文件中声明的 gradle 插件加载依赖项。是否可以根据使用的版本来控制这种依赖关系?

【问题讨论】:

    标签: gradle build.gradle gradlew


    【解决方案1】:

    不可复制 ~/projects/tmp_gradle/caches/modules-2 在所有构建后仍然为空

    export GRADLE_USER_HOME=~/projects/tmp_gradle
    

    一个简单的 build.gradle

    plugins {
        id 'java'
    }
    

    运行的控制台日志

    -bash$ gradle build --refresh-dependencies
    
    BUILD SUCCESSFUL in 618ms
    1 actionable task: 1 executed
    
    -bash$ ./gradlew build --refresh-dependencies
    Downloading https://services.gradle.org/distributions/gradle-6.1-bin.zip
    .........10%.........20%.........30%..........40%.........50%.........60%..........70%.........80%.........90%.........100%
    
    BUILD SUCCESSFUL in 15s
    1 actionable task: 1 up-to-date
    
    -bash$ ./gradlew build --refresh-dependencies
    Downloading https://services.gradle.org/distributions/gradle-6.5-bin.zip
    .........10%..........20%..........30%..........40%.........50%..........60%..........70%..........80%.........90%..........100%
    
    Welcome to Gradle 6.5!
    
    BUILD SUCCESSFUL in 18s
    1 actionable task: 1 executed
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-17
      • 2017-11-26
      • 1970-01-01
      • 1970-01-01
      • 2014-12-05
      • 1970-01-01
      • 2021-10-22
      • 1970-01-01
      相关资源
      最近更新 更多