java.lang.NoSuchMethodError & java.lang.NoSuchFieldError : INSTANCE in using Twilio SDK

标签 java nosuchmethoderror twilio-api

我正在使用 Java 中的 Twilio SDK 从 java 发送短信问题。我尝试使用 2 个不同版本的 Twilio 库,但出现了 2 个不同的错误:

对于 [twilio-java-sdk-6.3.0-jar-with-dependency.jar],我收到:

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.http.impl.conn.DefaultClientConnectionOperator.<init>(Lorg/apache/http/conn/scheme/SchemeRegistry;Lorg/apache/http/conn/DnsResolver;)V
at org.apache.http.impl.conn.PoolingClientConnectionManager.createConnectionOperator(PoolingClientConnectionManager.java:140)
at org.apache.http.impl.conn.PoolingClientConnectionManager.<init>(PoolingClientConnectionManager.java:114)
at org.apache.http.impl.conn.PoolingClientConnectionManager.<init>(PoolingClientConnectionManager.java:99)
at org.apache.http.impl.conn.PoolingClientConnectionManager.<init>(PoolingClientConnectionManager.java:85)
at org.apache.http.impl.conn.PoolingClientConnectionManager.<init>(PoolingClientConnectionManager.java:93)
at com.twilio.sdk.TwilioClient.<init>(TwilioClient.java:151)
at com.twilio.sdk.TwilioRestClient.<init>(TwilioRestClient.java:23)
at com.twilio.sdk.TwilioRestClient.<init>(TwilioRestClient.java:19)
at iristk.app.bankAsst.Watson.sendMsg(Watson.java:82)
at iristk.app.bankAsst.Watson.main(Watson.java:100)

对于 [twilio-7.9.1-jar-with-dependency.jar],我收到:

Exception in thread "main" java.lang.NoSuchFieldError: INSTANCE
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.<clinit>(SSLConnectionSocketFactory.java:144)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.getDefaultRegistry(PoolingHttpClientConnectionManager.java:109)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.<init>(PoolingHttpClientConnectionManager.java:116)
at com.twilio.http.NetworkHttpClient.<init>(NetworkHttpClient.java:46)
at com.twilio.http.TwilioRestClient$Builder.build(TwilioRestClient.java:97)
at com.twilio.Twilio.getRestClient(Twilio.java:122)
at com.twilio.base.Creator.create(Creator.java:45)
at iristk.app.bankAsst.Watson.sendMsg(Watson.java:82)
at iristk.app.bankAsst.Watson.main(Watson.java:91)

这两个错误是什么意思?如果可能的话,如何解决这些问题?

谢谢

最佳答案

您的应用程序似乎有另一个与 wilio-java-sdk 不兼容的 httpclient&httpcore 版本。请检查您的 pom.xml 并删除 httpclient&httpcore 的依赖项。如果您在 pom.xml 中看不到 httpclient&httpcore 的任何依赖项,请运行“mvn dependency:tree”来查找哪个依赖项包含 httpclient&httpcore,然后添加排除节点将其排除。

wilio-java-sdk-6.3.0-jar-with-dependency.jar 包含 httpclient(4.2.6) 和 httpcore(4.2.5)

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.2.6</version>
</dependency>
<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpcore</artifactId>
    <version>4.2.5</version>
</dependency>

twilio-7.9.1-jar-with-dependency.jar 包含 httpclient(4.5.2) 和 httpcore(4.4.4)

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.2</version>
</dependency>
<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpcore</artifactId>
    <version>4.4.4</version>
</dependency>

关于java.lang.NoSuchMethodError & java.lang.NoSuchFieldError : INSTANCE in using Twilio SDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43905085/

相关文章:

android - 在布局 xml 中使用 onClick 属性会导致 Android 对话框中出现 NoSuchMethodException

node.js - Twilio Chat API - 获取带有分页的消息列表(pageNo,pageLimit)

javascript - 如何从 API 的重复 promise 中获取值?

java - 谷歌云存储md5检查文件

java - 无法在 ArrayList 中添加对象?

Android 应用程序中的 java.lang.NoSuchMethodError

javascript - 获取Twilio功能中的入站短信号码

java - 向 TextField 添加提示

java - 一个JVM可以同时运行多个程序吗?

scala - 使用 Scala 符号文字会导致 NoSuchMethod