问题描述
我有一个名为project1的项目。 该project1依赖于project2,并且此依赖项被标记为测试范围。 现在project2对jar1有依赖性。 jar1依赖于另一个具有特定版本的jar(称为someJar)。
同时project1也直接依赖someJar,但版本不同。 现在,当我在project1中运行应用程序的单元测试时,project1中的someJar会启动,由于它使用的是较旧的版本,所以我的单元测试失败,并显示NoSuchMethodFound Exception。 我该如何控制它,以便在project1中运行单元测试时,将加载jar1的someJar而不加载project1的someJar? 有什么线索吗?
1楼
这就是所谓的Jar Hell。 我之前已经遇到了这个问题,并且也解决了...我想帮助遇到这个问题的人,因此在我的Blogger上写了一个小博客。有关更多详细信息,请参考相同的内容