2012-04-15 20 views
5

Android用のクライアントサーバーアプリケーションを開発しようとしています。この目的のために、私はサーバーとAndroidのapplecationの両方で使用し、.jarファイルとしてエクスポートする予定のエンジンを作成しました。NoClassDefFoundError:自分のjarをAndroidプロジェクトにリンクする際の問題

このengine.jarをサーバー側(単純な背景のJavaアプリケーション)で使用する際に問題はありませんでしたが、私のアンドロイドプロジェクトに.jarファイルをリンクする際に問題が発生しました。このengine.jarの後、私のアンドロイドプロジェクト

  • このフォルダにインポートengine.jar
    • 作成した "LIBS" DIR:

      は、私はいくつかの手順に従ってくださいengin.jarリンクするにはAndroid Dependencesグループに表示されます。また、私はその.jarからすべてのクラスを使用することができますが、Eclipseはそれらをエラーとしてマークしません。私は次のエラーでengine.jarから任意のオブジェクトを作成しようとしているとき 私のプロジェクトはうまくコンパイルしますが、アプリのクラッシュ:

      04-15 23:18:12.885: E/AndroidRuntime(17409): java.lang.NoClassDefFoundError: Common.Message.Message

      私はすべてを試みたと思います。説明された状況の根本的な原因について誰かが意見を共有することはできますか?

    +0

    Eclipseのビルドパスにjarファイルを追加しましたか? "Referenced Libraries"グループに表示されます。 – smichak

    +0

    @smichakのSDKツールv18 +で、 "libs"フォルダ内のライブラリが自動的に "Android Dependencies"経由でビルドパスに追加されます –

    +0

    以前のコメントで言われたように "Referenced Libraries"は17の改訂以来 "Android Dependencies" Android SDK –

    答えて

    4

    私も同じ問題を経験しました。私は、次の操作を行って、それを解決:

    右プロジェクトディレクトリをクリックしてください - >Build Path - >Configure Build Path - >タブOrder and Exportを選択 - > /チェック懸念.jarファイルのチェックボックスを選択 - >プレスOk

    これはあなたの問題も解決します。将来の使用のために

    +0

    そのように見えるBOOM。多くのおかげで、これは本当の緊急事態でした。 –

    +0

    だから、あなたはなぜ@Arunに彼の恩恵を与えないのですか? –

    +0

    アルテム、私は試みましたが、十分な時間が過ぎていないので、システムは私を許さなかったでしょう。 –

    0

    は、プロジェクトのルートに「LIBS」という名前のフォルダを作成し、追加したいと以前のコメントで述べたすべての輸出ものは自動的に行われますjarファイルを追加します。

    0

    あなたのサーバとクライアントのようなものは、クラスの共通のjarファイルを持っていないようです。クライアントサーバーアプリケーションをコーディングするときに、共通のコードプロジェクトがいくつかあることを確認する必要がありますが、これは主に今後libファイルになります。

    関連する問題