【发布时间】:2013-08-11 17:07:19
【问题描述】:
在实现自定义 hamcrest 匹配器以在 Grails 中使用时遇到问题。使用我的匹配器运行测试失败:
java.lang.NoSuchMethodError: org.hamcrest.Matcher.describeMismatch(Ljava/lang/Object;Lorg/hamcrest/Description;)V
经过一番谷歌搜索,这似乎是由加载库的顺序引起的:JUnit 和 Hamcrest。我在 BuildConfig.groovy 中添加了以下依赖项:
dependencies {
test 'org.hamcrest:hamcrest-all:1.3'
}
根据我能够找到的说明,这可以通过确保在 JUnit 类之前加载 hamcrest 类来解决。我不知道如何在 Grails 中实现这一点,也不知道如何以任何其他方式解决这个问题。
使用 Grails 2.2.1
【问题讨论】:
标签: grails junit classloader hamcrest matcher