簡體   English   中英

登錄時出現Smack 4.2.0 NullPointerException

[英]Smack 4.2.0 NullPointerException when logging in

我在使用Smack API方面還是一個新手。 嘗試登錄時出現此異常。

這是我的代碼:

XMPPTCPConnectionConfiguration configuration = XMPPTCPConnectionConfiguration.builder()
                .setUsernameAndPassword(username, password)
                .setXmppDomain(domain)
                .setHostAddress(InetAddress.getByName(host))
                .setPort(port)
                .build();
XMPPTCPConnection connection = new XMPPTCPConnection(configuration);
connection.connect();
connection.login();

這是我的日志:

Exception in thread "main" java.lang.NullPointerException
at java.util.Collections$UnmodifiableCollection.<init>(Collections.java:1026)
at java.util.Collections$UnmodifiableSet.<init>(Collections.java:1128)
at java.util.Collections.unmodifiableSet(Collections.java:1118)
at org.jivesoftware.smack.ConnectionConfiguration.getEnabledSaslMechanisms(ConnectionConfiguration.java:476)
at org.jivesoftware.smack.SASLAuthentication.selectMechanism(SASLAuthentication.java:359)
at org.jivesoftware.smack.SASLAuthentication.authenticate(SASLAuthentication.java:191)
at org.jivesoftware.smack.tcp.XMPPTCPConnection.loginInternal(XMPPTCPConnection.java:385)
at org.jivesoftware.smack.AbstractXMPPConnection.login(AbstractXMPPConnection.java:491)
at org.jivesoftware.smack.AbstractXMPPConnection.login(AbstractXMPPConnection.java:448)
at Main.main(Main.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)

案件結案。 最初,我只使用smack core和smack tcp作為庫。 事實證明,在我的案例中,您需要使用smack sasl作為庫。 在此處下載smack並將smack sasl jar作為庫復制到libs文件夾中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM