gradle local jar依赖不起作用

时间:2018-04-27 05:20:38

标签: gradle build.gradle dependency-management

我很擅长学习。 这是我的项目配置

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

1 个答案:

答案 0 :(得分:1)

这是因为您选择了错误的目标依赖项配置。我的意思是testCompile,而不是你应该使用:testRuntimetestRuntimeClasspath