我有一个自定义的编译任务。
task compileSpeedTest(type: JavaCompile) {
classpath = files('build')
source = fileTree('src/test/java/speed')
destinationDir = file('bin')
}
Gradle在执行之前不会尝试下载依赖项。我在任何地方都找不到可以将其添加到列表dependsOn上的任务名称。
发布于 2014-12-13 11:01:26
如果您确实需要将java依赖项下载到文件夹中,则可以下载它们。
示例:
apply plugin: 'java'
dependencies {
runtime group: 'com.netflix.exhibitor', name: 'exhibitor-standalone', version: '1.5.2'
runtime group: 'org.apache.zookeeper', name: 'zookeeper', version: '3.4.6'
}
repositories { mavenCentral() }
task getDeps(type: Copy) {
from sourceSets.main.runtimeClasspath
into 'runtime/'
}
在执行gradle getDeps
时,将依赖项(及其依赖项)下载到文件夹runtime
中。
发布于 2017-07-03 22:23:12
对于Intellij,请转到视图>工具窗口> Gradle >刷新所有项目( Gradle窗口顶部的蓝色圆形箭头。
发布于 2016-07-22 22:05:28
这是一个稍微轻一点的任务,它不会不必要地将文件复制到目录中:
task downloadDependencies(type: Exec) {
configurations.testRuntime.files
commandLine 'echo', 'Downloaded all dependencies'
}
针对kotlin & gradle 6.2.0进行了更新,添加了buildscript依赖解析:
fun Configuration.isDeprecated() = this is DeprecatableConfiguration && resolutionAlternatives != null
fun ConfigurationContainer.resolveAll() = this
.filter { it.isCanBeResolved && !it.isDeprecated() }
.forEach { it.resolve() }
tasks.register("downloadDependencies") {
doLast {
configurations.resolveAll()
buildscript.configurations.resolveAll()
}
}
https://stackoverflow.com/questions/21814652
复制相似问题