我已经将provided
依赖范围配置如下。我的问题是,提供的依赖项在测试期间的运行时不可见。我如何配置它以保留依赖provided
但在测试类路径中可用?
apply plugin: 'java'
configurations {
provided
}
sourceSets {
main {
compileClasspath += configurations.provided
}
}
dependencies {
provided 'com.google.guava:guava:18.0'
provided 'org.apache.commons:commons-lang3:3.3.2'
// Tests
testCompile 'junit:junit:4.11'
testCompile 'org.assertj:assertj-core:1.7.0'
// Additional test compile dependencies
testCompile 'joda-time:joda-time:2.2'
}
一种解决方案是使用
testCompile
范围添加诸如joda-time库之类的依赖项,但我不想重复任何条目。我相信可以通过正确的配置来实现。 最佳答案
有两种方法可以做到这一点。首先,让testRuntime
配置从provided
扩展。
configurations {
provided
testRuntime.extendsFrom(provided)
}
其次,您可以将
provided
配置添加到test
任务的类路径中。test {
classpath += configurations.provided
}
关于java - 使用Gradle将提供的依赖项添加到测试类路径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27275402/