Nat*_*eld 5 unit-testing dependency-management maven transitive-dependency
我试图确保我从maven发布的测试jar具有正确的传递依赖关系。
例如,test-jar不会依赖非test-jar生成。
类似地,例如AAA发布了一个测试罐,而BBB包含了AAA的测试罐的测试作用域依赖性。在CCC的测试中,当我使用BBB的test-jar中的类,而使用AAA的test-jar中的类时,我在AAA的test-jar中的类上收到“找不到类”错误-即,BBB的测试的传递依赖项aren根本没有正确记录。
有什么办法可以依靠BBB的测试罐正确地引入传递依赖关系吗?
我在https://github.com/nkronenfeld/transitive-test-dependencies中有所有这些的示例代码
对于BBB的常规jar和AAA的test jar,在CCC / pom.xml中有两个已注释掉的依赖项,似乎都不需要它们。但是,CCC的测试目标不会没有任何一个。
正如 khmarbaise 所说:测试依赖关系是不可传递的。如果 A 声明对 B 的测试依赖项,则意味着 A 需要 B 来运行其测试。A 的用户不需要知道这一点。如果测试 jar 需要运行某些东西,它应该声明对此的编译依赖项。
| 归档时间: |
|
| 查看次数: |
1204 次 |
| 最近记录: |