Я использую JUnit-dep 4.10 и Hamcrest 1.3.RC2.
Я создал специальный сопоставитель, который выглядит следующим образом:
public static class MyMatcher extends TypeSafeMatcher<String> {
@Override
protected boolean matchesSafely(String s) {
/* implementation */
}
@Override
public void describeTo(Description description) {
/* implementation */
}
@Override
protected void describeMismatchSafely(String item, Description mismatchDescription) {
/* implementation */
}
}
Он прекрасно работает, когдазапустить из командной строки с помощью Ant.Но при запуске из IntelliJ происходит сбой с:
java.lang.NoSuchMethodError: org.hamcrest.Matcher.describeMismatch(Ljava/lang/Object;Lorg/hamcrest/Description;)V
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:18)
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:8)
at com.netflix.build.MyTest.testmyStuff(MyTest.java:40)
Я предполагаю, что он использует неправильный hamcrest.MatcherAssert.Как мне найти, какой Hamcrest.MatcherAssert он использует (т.е. какой файл JAR он использует для Hamcrest.MatcherAssert)?AFAICT, единственные jamcrest jar в моем classpath - это 1.3.RC2.
Использует ли IntelliJ IDEA собственную копию JUnit или Hamcrest?
Как вывести CLASSPATH времени выполнения, которую использует IntelliJ?