Неустранимое исключение: java.lang.NoSuchMethodError для org.apache.commons.lang3.tuple.Pair - PullRequest
0 голосов
/ 26 сентября 2018

Мне нужно сравнить два пользовательских объекта, которые являются сложными.Вместо переопределения метода equals я использовал метод apache.commons.lang3 EqualsBuilder.reflectionEquals (obj1, obj2).

Все отлично работает на большинстве устройств Android.Но для Xiaomi приложение вылетает со следующим исключением:

Fatal Exception: java.lang.NoSuchMethodError: No static method b(Ljava/lang/Object;Ljava/lang/Object;)Lorg/apache/commons/lang3/tuple/Pair; in class Lorg/apache/commons/lang3/tuple/Pair; or its super classes (declaration of 'org.apache.commons.lang3.tuple.Pair' appears in /system/framework/framework.jar)
   at org.apache.commons.lang3.builder.EqualsBuilder.getRegisterPair(EqualsBuilder.java:141)
   at org.apache.commons.lang3.builder.EqualsBuilder.isRegistered(EqualsBuilder.java:159)
   at org.apache.commons.lang3.builder.EqualsBuilder.reflectionAppend(EqualsBuilder.java:537)
   at org.apache.commons.lang3.builder.EqualsBuilder.reflectionAppend(EqualsBuilder.java:506)
   at org.apache.commons.lang3.builder.EqualsBuilder.reflectionEquals(EqualsBuilder.java:433)
   at org.apache.commons.lang3.builder.EqualsBuilder.reflectionEquals(EqualsBuilder.java:386)
   at org.apache.commons.lang3.builder.EqualsBuilder.reflectionEquals(EqualsBuilder.java:325)
   at 

У меня есть следующая строка в Gradle с версией:

 implementation 'org.apache.commons:commons-lang3:3.8'

Я не уверен, что идет не так и почему этоне работает на нескольких устройствах и работает нормально на других.

...