私はかなり長い間リフレクション コードを実行してきましたが、外部 JAR が原因で最近問題が発生しました。ここで問題となっている JARは、POST リクエストを実行できるようにHTTPPost http://developer.android.com/reference/org/apache/http/client/methods/HttpPost.htmlに関連付けられているものです。
私は同じ 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
助けてください!