我已经做了很长一段时间的一些反射代码,但最近才因为外部 JAR 而出现问题。这里有问题的 JAR 是与 HTTPPost http://developer.android.com/reference/org/apache/http/client/methods/HttpPost.html相关联的 JAR,以便我可以执行 POST 请求
我使用相同的 IDE Eclipse 在单独的项目中编写我的 Java 代码和 Android 代码。
在我的 Android 项目中,我已将 JAR 文件复制到 /libs 文件夹中,并将 JAR 添加到 Android 依赖项中。
在 Java 项目中,我在 IDE 中添加了依赖项,这样我就不会弹出编码错误。
要“编译”Java 项目,我使用以下命令行
javac -classpath android.jar;httpclient-4.1.2.jar;httpcore-4.1.2.jar;httpmime-4.1.2.jar MyReflectionClass.java
jar -cf MyReflectionClass.jar MyReflectionClass.java
dx --dex --output=classes.dex myreflectionclass.jar
没有报告错误。
直到现在,当我不需要外部 JAR 时,这些步骤一直运行良好。似乎第一行不足以“导入” JAR/注释(我不太了解这些术语)
Android 项目能够加载 Java 项目中的类,Java 代码一直执行到这一行
MultipartEntity ent = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
我在 Logcat 中得到这个错误的地方
tag = dalvikvm
text = Could not find class 'org.apache.http.entity.mime.MultipartEntity', referenced from method MyReflectionClass.mymethod
请帮忙!