我很擅长学习。 这是我的项目配置
Project
.
├── build.gradle
├── sub-project-1
│ ├── build.gradle
├── tests
│ ├── rest
│ └── unit
│ ├── build.gradle // Lets call this unit_build.gradle
我的单元测试依赖于derby.jar,而unit_build.gradle具有以下内容:
dependencies{
..
testCompile fileTree(dir: "${System.getProperty('java.home')}/../db/lib", include: "derby.jar")
testCompile fileTree(dir: "${System.getProperty('java.home')}/../db/lib", include: "derbyclient.jar")
}
注意:我们有自己的存储库,并且不包含derby。所以我们通过从本地添加它来使用它。
当我运行gradle构建,然后执行我的测试任务时,这可以正常工作。
但是我们也将jar发布到测试服务器并在那里运行它,在那里失败并且在derby上发现了一个类未找到的异常。
可能是什么原因?应该怎么做才能解决这个问题?
Gradle版本 - 1.12
答案 0 :(得分:1)
这是因为您选择了错误的目标依赖项配置。我的意思是testCompile
,而不是你应该使用:testRuntime
或testRuntimeClasspath