在Android工程中使用unirest-java报错.md
来源:互联网 发布:mac office 2016 登录 编辑:程序博客网 时间:2024/06/03 17:07
在Android工程中引入unirest-java时,运行出现以下错误:
Could not find class ‘javax.naming.ldap.LdapName’, referenced from method com.mashape.relocation.conn.ssl.DefaultHostnameVerifier.extractCN
首先,在Android工程中使用unirest-java需要单独的编译,这里参考官方给出的教程,但使用mvn clean assembly:assembly
命令编译时会在执行Running com.mashape.unirest.test.http.UnirestTest
task是报错,因此需要跳过测试task,以mvn clean assembly:assembly -Dmaven.test.skip=true
命令执行;
当你编译出unirest-java-1.4.10-SNAPSHOT-withDependency-ShadedForAndroid.jar后在Android工程中发现不能使用,会报如上的错误;但使用教程中Sample工程里unirest-java-1.3.2-SNAPSHOT-withDependency-ShadedForAndroid.jar却没问题;
通过查看unirest-java在github的提交历史,发现在adbcfab
的提交记录中修改httpclient/httpasyncclient/httpmime三个jar的版本后,就不能在使用了;因为这里讲三个jar的依赖修改到前一个commit;
<dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.3.4</version> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpasyncclient</artifactId> <version>4.0.1</version> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpmime</artifactId> <version>4.3.4</version> </dependency>
这样重新编译出的jar在Android工程就可以使用了;
原因猜猜是在新版的httpClient中引用了jdk的javax.naming.ldap.LdapName
,而在android.jar中未包含找个类;
- 在Android工程中使用unirest-java报错.md
- 在Maven工程中java中@override报错
- android中asyncTask使用导致工程报错
- android studio java工程 报错
- 在WinForms中使用MD皮肤
- 在Android studio中建立Java工程
- 在Android Studio中创建Java工程
- 在Android工程中加入AIDL文件时,gen目录生成的文件报错-问题解决
- Android Studio Databinding在xml中使用中文报错
- 008_在自己的网站中使用MarkDown【editor.md】(Java)
- 使用Android studio问题,工程路径含中文字报错
- Android Library工程switch case中使用 R.id.x报错
- android stdio java 工程中使用jsonobject
- 在eclipse中导入工程后@Override报错
- 在eclipse中导入工程后@Override报错
- Jetty在Spring工程中启动报错
- 在eclipse中导入工程后@Override报错
- 在eclipse中导入工程后@Override报错
- 爱测未来安全-前端性能测试平台及应用
- JDBC
- 关于IO流的文件与目录
- Mysql工作原理一
- Netty使用google protobuf进行编解码
- 在Android工程中使用unirest-java报错.md
- 简单学生选课系统之学生身份登录
- (三)jQuery.ajxa——dataType:json(1)
- 由Spring引出的一些瞎想(2)
- Ubuntu下DNS服务器的配置——Bind9
- 运用PARALLEL方式成倍提升Oracle数据分析效率
- OJ的前端界面实现
- BeanUtils 和 DBUtils
- Tomcat配置