这必须是直截了当但我无法看到group:name:和version:来自某个特定的jar文件。例如,来自Gradle的文档。
dependencies {
compile group: 'org.hibernate', name: 'hibernate-core', version: '3.6.7.Final'
testCompile group: 'junit', name: 'junit', version: '4.+'
testRuntime "org.hamcrest:SelfDescribing:1.+"
}
我正在尝试使用hamcrest jar进行junit测试。我需要hamcrest进行运行时测试,但我不知道如何正确指定它。下面是我的build.gradle文件。此测试项目将成功构建,但由于未解析的依赖关系而无法运行单元测试。
apply plugin: 'java'
apply plugin: 'eclipse-wtp'
version = '1.0'
compileJava.destinationDir = file("$buildDir/classes/test")
sourceSets {
main {
java {
srcDir 'src'
}
}
}
repositories {
flatDir dirs: "C:/eclipse/plugins/org.junit_4.11.0.v201303080030"
flatDir dirs: "C:/eclipse/plugins"
}
dependencies {
compile "junit:junit:4"
testCompile "junit:junit:4"
testRuntime "org.hamcrest:SelfDescribing:1.+"
}
test {
testLogging.showStandardStreams = true
testLogging {
events 'started', 'passed', 'skipped', 'failed', 'standardOut', 'standardError'
exceptionFormat 'short'
}
}
jar {
manifest.attributes provider: 'gradle'
}
答案 0 :(得分:2)
要在jar文件中添加依赖项,请在dependencies
块中添加如下语句:
compile files('path/to/archive.jar')
这是一种流行的方法,它会自动获取 libs 目录中的所有jar文件:
compile fileTree(dir: 'path/to/libs', include: '*.jar')
答案 1 :(得分:1)
使用flatDir
存储库时,您必须确保:
module-version.extension
(例如junit-4.jar
)或module.extension
(例如junit.jar
)相匹配。 或者,您可以使用file
依赖关系,如Scott的回答中所述。
PS:我不确定版本范围是否适用于flatDir
存储库。