Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何用添加的jar中可用的类覆盖Android Api类?_Java_Android_Eclipse_Apache - Fatal编程技术网

Java 如何用添加的jar中可用的类覆盖Android Api类?

Java 如何用添加的jar中可用的类覆盖Android Api类?,java,android,eclipse,apache,Java,Android,Eclipse,Apache,场景:一个android项目,比如说ProjAndroid指的是一个java项目,比如说(HelperProj) 在HelperProj中,我试图通过实例化httpConnection池的管理器来使用它 poolighttpclientconnectionmanager cm=new-poolighttpclientconnectionmanager() 我遇到并能够作为一个独立的程序实现,没有任何故障 但对于android,首先它给出的错误是NoClassDefFoundError,这在我将h

场景:一个android项目,比如说ProjAndroid指的是一个java项目,比如说(HelperProj)

在HelperProj中,我试图通过实例化httpConnection池的管理器来使用它

poolighttpclientconnectionmanager cm=new-poolighttpclientconnectionmanager()

我遇到并能够作为一个独立的程序实现,没有任何故障

但对于android,首先它给出的错误是
NoClassDefFoundError
,这在我将httpclient-4.3.1.jar和httpcore-4.3.jar添加到android项目时得到了解决。但现在我得到了另一个错误

原因:java.lang.NoSuchFieldError:org.apache.http.message.basiclineformter.INSTANCE

我的结论:- 上面的字段应该在httpcore-4.3.jar中,因为我在以独立方式运行代码时没有收到任何错误。因此,我搜索并发现android已经提供了该字段不可用的位置,并且可能在运行时引用了该类

如果上面的错误,请纠正我

帮助:- 因此,有人请指导我如何解决这个资源冲突,并使用jar中可用的类,而不是android api中可用的类

因此,有人请指导我如何解决这个资源冲突,并使用jar中可用的类,而不是android api中可用的类

这是不可能的。您无法控制类路径,因此固件加载的类始终优先

欢迎您尝试使用将第三方代码移动到单独的包中

或者,你可以看看是否有人已经为你做了这件事


或者,欢迎您为您的问题提出一个不同的解决方案,该解决方案不涉及替换Android提供的类。

获取该文件并将其嵌入到您的代码中,作为最终解决方案:)您可以通过“dll地狱”了解更多信息我考虑过,但我不想这样做,因为它将成为特定于android的。我想编写代码,这样我也可以将其用于其他java应用程序。您提供的解决方案非常适合我。谢谢