在AndroidStudio(1.4)上运行unitTest时,我的下面测试按标题失败,即java.lang.NoSuchMethodError: org.assertj.core.api.Assertions.assertThat(Ljava/util/Map;)Lorg/assertj/core/api/MapAssert;
@Test
public void mapTest() {
Map<String, String> map = new HashMap<>();
map.put("Key1", "Value1");
map.put("Key2", "Value2");
Assertions.assertThat(map).isNotNull();
}
当我使用gradlew命令从命令行运行它时,它通过了。我已将Java指向jdk1.8.0_66.jdk。谁知道为什么?
(p / s:我得到了最新的AndroidStudio 2.0预览版5,我的测试大量失败。所以我决定继续使用旧版Android Studio。)
尝试搜索帮助并找到此链接https://github.com/joel-costigliola/assertj-core/issues/395。显然他在IDE上也面临同样的问题。任何线索是什么原因?
答案 0 :(得分:0)
我会仔细检查类路径。 使用assertj核心1.7.1 - 它是一个取决于java 6的版本,因为我确信它与Android兼容。
希望有所帮助