是否有一个命令会指示Gradle解析并下载所有testRuntime
依赖项,但不运行测试?
最好,我想在不编写自定义任务的情况下执行此操作(以便可以针对任何 Gradle项目运行该命令)。
例如,如果我的build.gradle
具有此依赖关系:
dependencies {
// ...
testRuntime "org.seleniumhq.selenium:selenium-htmlunit-driver:2.47.1"
}
在运行selenium-htmlunit-driver
运行测试之前,不会下载与gradle test
关联的JAR文件。我可以通过运行gradle testClasses
而不是testRuntime
代码来下载所有其他依赖项。
答案 0 :(得分:3)
将以下内容放在名为resolve.gradle
gradle.allprojects { project ->
project.task('resolveTestRuntime') {
doLast {
project.configurations.testRuntime.resolve()
}
}
}
然后将resolve.gradle
作为init script
gradlew --init-script resolve.gradle resolveTestRuntime
答案 1 :(得分:0)
将Lance Java的答案修改为有效的Init脚本,我可以使用以下resolve.gradle
完成此操作:
apply plugin:MyInitPlugin
class MyInitPlugin implements Plugin<Gradle> {
@Override
void apply(Gradle gradle) {
gradle.allprojects{ project ->
project.task('resolveTestRuntime') {
doLast {
project.configurations.testRuntime.resolve()
}
}
}
}
}
然后跑步:
gradlew --init-script resolve.gradle resolveTestRuntime