Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Getting NoSuchFieldError INSTANCE org/apache/http/message/BasicHeaderValueParser

I'm working on an app on Android. I'm using httpcore 4.3.3. I get this when I try to use ContentType.parse(string)

java.lang.NoSuchFieldError: No static field INSTANCE of type Lorg/apache/http/message/BasicHeaderValueParser; in class Lorg/apache/http/message/BasicHeaderValueParser; or its superclasses (declaration of 'org.apache.http.message.BasicHeaderValueParser' appears in /system/framework/ext.jar) 

I've done some googling and I understand why I'm getting the error, but I'm unsure how to fix it. From what I've read, it seems that ContentType tries to make use of the BasicHeaderValueParser that comes with Android and that class doesn't have the INSTANCE field yet. Any help please?

These are the relevant imports:

compile('org.apache.httpcomponents:httpmime:4.3.6') {     exclude module: 'httpclient' } compile 'org.apache.httpcomponents:httpcore:4.3.3' 
like image 767
joshkendrick Avatar asked Dec 08 '14 20:12

joshkendrick


1 Answers

Unfortunately stock versions of HttpCore cannot be used in Android. Please use Apache HttpClient Android Port which also includes requisite HttpCore classes

compile('org.apache.httpcomponents:httpmime:4.3.6') {     exclude module: 'httpclient' } compile 'org.apache.httpcomponents:httpclient-android:4.3.5' 
like image 191
ok2c Avatar answered Sep 22 '22 07:09

ok2c