0

Android SDK から wsimport.exe を使用し、プロジェクトに手動で (出力クラスをドラッグして) インポートしています (外部 jar はありません - インポートされたファイルは src フォルダーの一部です)。

Java テスト プロジェクトではうまく機能しますが、Android プロジェクトに実装しようとすると、この奇妙な問題に直面します。ADT 17 の変更に関する既知の問題に関する情報を既に読みましたが、それはすべて外部 jar の並べ替えに関連しています。私はjarをインポートしていないので、私には関係ありません。

それがADT 17の問題の一部であるかどうか誰か知っていますか?

これが私のlogcatです:

04-06 02:07:09.340: E/AndroidRuntime(13308): java.lang.NoClassDefFoundError: org.tempuri.Service1
04-06 02:07:09.340: E/AndroidRuntime(13308):    at hhs.pack.ListViewActivity.getListFromDB(ListViewActivity.java:72)
04-06 02:07:09.340: E/AndroidRuntime(13308):    at hhs.pack.ListViewActivity.onCreate(ListViewActivity.java:40)
4

1 に答える 1

0

問題は、apk ツールがクラスを無視するか、Eclipse がclassファイルとの関係を認識していないことです (これについては後で説明します)。クラスでjarを作成してみませんか?ExportEclipse では、クラスを持つプロジェクトを右クリックして> Java>と言うことができますJar

それが問題にならない場合は、生成したクラスをソースに保持するのではなく、 bin>フォルダーに移動してみてください (デフォルト オプションではないclassesソースと同じフォルダーにクラスを保持するように Eclipse をセットアップしていない限り) 。オプションで問題が解決する場合があります)。

> > >の下のEclipseで、ソースフォルダーの出力フォルダーを許可するオプションをオンにしてみてください。ProjectPropertiesJava Build PathSource

jarotpionを生成する場合jar、ソースで使用している はlibsAndroid プロジェクトのフォルダーにある必要があります。そうしないと、アプリケーションにパッケージ化されません。古いバージョンの ADT の一部のバージョンでは、プロジェクト ライブラリに jar も追加する必要があることに気付きました。

私が提案できるのはそれだけです。あなたのような状況では、私は常に自分のjarを作成します。

于 2012-04-08T00:10:01.143 に答える