尝试使用smack连接Facebook聊天时出现此错误

时间:2014-04-22 13:30:51

标签: java facebook chat smack

尝试使用smack连接Facebook聊天时出现此错误。 jars使用smack 3.3.1.jar,smackx 3.3.1.jar

Exception in thread "main" java.lang.AbstractMethodError: org.jivesoftware.smackx.ServiceDiscoveryManager$1.connectionCreated(Lorg/jivesoftware/smack/Connection;)V
        at org.jivesoftware.smack.XMPPConnection.initConnection(XMPPConnection.java:652)
        at org.jivesoftware.smack.XMPPConnection.connectUsingConfiguration(XMPPConnection.java:604)
        at org.jivesoftware.smack.XMPPConnection.connect(XMPPConnection.java:1022)
        at com.FacebookChatSample.main(FacebookChatSample.java:30)

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。原来我没有把正确的包放在我的pom.xml

我使用了以下Maven依赖项:

<dependency>
    <groupId>jivesoftware</groupId>
    <artifactId>smack</artifactId>
    <version>3.1.0</version>
</dependency>

当我尝试连接到我的服务器时,它给了我错误。当我把它改为:

<dependency>
    <groupId>org.igniterealtime.smack</groupId>
    <artifactId>smackx</artifactId>
    <version>3.2.1</version>
</dependency>

它奏效了。

注意: smack依赖是从开始的另一个条目,应该这样离开:

<dependency>
    <groupId>org.igniterealtime.smack</groupId>
    <artifactId>smack</artifactId>
    <version>3.2.1</version>
</dependency>

注意2:我没有开发使用smackx中的任何内容,它在XMPPConnection.initConnection()中用于尝试通知所有ConnectionCreationListener侦听器刚刚连接的连接建立的。