Smack 4.2.1 api java.lang.NoSuchMethodError 在 class Lorg/jxmpp/util/cache/Cache
Smack 4.2.1 api java.lang.NoSuchMethodError in class Lorg/jxmpp/util/cache/Cache
在 Smack 4.2.1 中,使用 jxmpp-core-0.5.0-alpha7.jar lib 我有以下问题
com.deep.tasktowerchat fatal error : No interface method lookup(Ljava/lang/Object;)Ljava/lang/Object; in class Lorg/jxmpp/util/cache/Cache; or its super classes (declaration of 'org.jxmpp.util.cache.Cache' appears in /data/app/com.deep.tasktowerchat-1/base.apk)
java.lang.NoSuchMethodError: No interface method lookup(Ljava/lang/Object;)Ljava/lang/Object; in class Lorg/jxmpp/util/cache/Cache; or its super classes (declaration of 'org.jxmpp.util.cache.Cache' appears in /data/app/com.deep.tasktowerchat-1/base.apk)
at org.jivesoftware.smack.sasl.core.ScramMechanism.evaluateChallenge(ScramMechanism.java:179)
at org.jivesoftware.smack.sasl.SASLMechanism.challengeReceived(SASLMechanism.java:245)
at org.jivesoftware.smack.SASLAuthentication.challengeReceived(SASLAuthentication.java:253)
at org.jivesoftware.smack.SASLAuthentication.challengeReceived(SASLAuthentication.java:237)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1091)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access0(XMPPTCPConnection.java:982)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.run(XMPPTCPConnection.java:998)
at java.lang.Thread.run(Thread.java:818)
当我在我的项目中使用 smack-android-4.2.0-beta3-SNAPSHOT.jar lib 时它工作正常但在更改 smack lib 版本后它会抛出上述错误。
是 smack 还是 jxmpp 库版本问题?
您需要在您的应用中添加以下具有相同版本代码的库。您可以下载 here 以获得更多存储库和 jar 文件
jxmpp-core-0.5.0.jar
jxmpp-jid-0.5.0.jar
jxmpp-stringprep-libidn-0.5.0.jar
jxmpp-util-cache-0.5.0.jar
然后重建并清理您的项目。我希望它会起作用。
在 Smack 4.2.1 中,使用 jxmpp-core-0.5.0-alpha7.jar lib 我有以下问题
com.deep.tasktowerchat fatal error : No interface method lookup(Ljava/lang/Object;)Ljava/lang/Object; in class Lorg/jxmpp/util/cache/Cache; or its super classes (declaration of 'org.jxmpp.util.cache.Cache' appears in /data/app/com.deep.tasktowerchat-1/base.apk)
java.lang.NoSuchMethodError: No interface method lookup(Ljava/lang/Object;)Ljava/lang/Object; in class Lorg/jxmpp/util/cache/Cache; or its super classes (declaration of 'org.jxmpp.util.cache.Cache' appears in /data/app/com.deep.tasktowerchat-1/base.apk)
at org.jivesoftware.smack.sasl.core.ScramMechanism.evaluateChallenge(ScramMechanism.java:179)
at org.jivesoftware.smack.sasl.SASLMechanism.challengeReceived(SASLMechanism.java:245)
at org.jivesoftware.smack.SASLAuthentication.challengeReceived(SASLAuthentication.java:253)
at org.jivesoftware.smack.SASLAuthentication.challengeReceived(SASLAuthentication.java:237)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1091)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access0(XMPPTCPConnection.java:982)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.run(XMPPTCPConnection.java:998)
at java.lang.Thread.run(Thread.java:818)
当我在我的项目中使用 smack-android-4.2.0-beta3-SNAPSHOT.jar lib 时它工作正常但在更改 smack lib 版本后它会抛出上述错误。 是 smack 还是 jxmpp 库版本问题?
您需要在您的应用中添加以下具有相同版本代码的库。您可以下载 here 以获得更多存储库和 jar 文件
jxmpp-core-0.5.0.jar
jxmpp-jid-0.5.0.jar
jxmpp-stringprep-libidn-0.5.0.jar
jxmpp-util-cache-0.5.0.jar
然后重建并清理您的项目。我希望它会起作用。