gpt4 book ai didi

gradle - 阻止Gradle Zip任务在执行任务之前下载依赖项

转载 作者:行者123 更新时间:2023-12-03 05:17:37 26 4
gpt4 key购买 nike

我有一个简单的gradle任务,可以压缩一个Maven jar(例如)。如何获得在执行任务之前不下载jar的任务?

apply plugin:'base'
repositories { mavenCentral() }

configurations.create 'myDep'
dependencies {
myDep 'commons-io:commons-io:1.0'
}
task zip(type:Zip) {
from { configurations.myDep.collect { zipTree(it) } }
}

如果我运行“渐变任务”,它将意外下载jar:
$ gradle tasks
Download http://repo1.maven.org/maven2/commons-io/commons-io/1.0/commons-io-1.0.pom
Download http://repo1.maven.org/maven2/commons-io/commons-io/1.0/commons-io-1.0.jar
:tasks

最佳答案

我认为gradle tasks是一个特例,因为它需要评估所有任务的输入以确定(并显示)它们的任务依赖性。通常,只有在Gradle决定执行zip任务后,才会评估zip任务的输入(并因此下载Jar)。这将在任务执行图的构建过程中发生(再次确定任务依赖性),即在执行任何任务之前(但仅在Gradle已决定执行zip的情况下)。

如果绝对必须防止在使用gradle tasks的情况下下载Jar,则可以将from的配置推迟到zip.doFirst {}为止,但这不是一般的解决方案,并且可能导致其他问题(最新检查无法正常工作,任务依赖项无法正常工作自动推断)。

关于gradle - 阻止Gradle Zip任务在执行任务之前下载依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22852379/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com