我知道解决办法是以某种方式确保在hamcrest之后加载Junit。我有一个intellij项目,我在其中设置了一个外部库,它包含JUnit和JMock以及hamcrest。如何确保此错误不会显示
答案 0 :(得分:5)
答案 1 :(得分:2)
您应该确保库(jar)的兼容性。如果jar中的一个类使用了另一个jar中的类的一些方法,并且新添加了这个使用过的方法而你使用的是旧jar,那么肯定会得到java.lang.NoSuchMethodError
。
答案 2 :(得分:0)
您需要导入junit-dep.jar(不包括hamcrest依赖项!?),而不是junit.jar。如果你在一个大型项目中使用Maven,这可能需要大量追逐来清除所有模糊的hamcrest和junit导入。
即将发布的junit将与hamcrest 1.3兼容可能会有所帮助