私はここで見つけたいくつかの手順(現在、URLが見つからない、申し訳ありません)を実行して、私のAndroidプロジェクトを、私のコードの99.9%がライブラリプロジェクトにあるレイアウトに変換しました、同じワークスペースの下に他の2つのシェルプロジェクトがあり、それらのほとんどはAndroidManifest.xmlファイルといくつかのリソースファイルだけです。これは、同じプロジェクトの2つのビルドをサポートできるように、テキスト/アイコンを少し変更しただけです。アプリケーション名も異なるため、両方をAndroid Marketで同時に公開できます。
私がこれを行って以来、コンパイルを10回おき、おそらく1日か2回おきに、 "dalvikエラー1"と "アクセスが既に存在します"に関するメッセージが表示されます(アクセスは最初の名前ですJava私のライブラリプロジェクトのユニット)。
問題を「回避する」には、Javaビルドしようとしているスタブプロジェクトのビルドパスに移動し、ライブラリタブからメインライブラリからJARファイルを削除します。その後、エラーなしでビルドできます。
その後しばらくして(多分1または2日)、スタブプロジェクト(ライブラリではない)をコンパイルすると、クラスが見つからないというエラーが表示されます。 Javaビルドパスに戻り、JARファイルへの参照を戻します。すべてが1日または2日間正常に動作し、それから同じに戻ります。以前のようにエラー。
これは既知の問題であり、私がする必要があることですか、それともプロジェクト/ワークスペースの再構成によって解決できますか?現在私は持っています:
Libプロジェクト-ビルドパスに2つのライブラリのみ:Android 2.1およびcom.Android.ide.Eclipse.adt.LIBRARIES
上記のlibを使用する最初のスタブプロジェクト-上記のプロジェクトと同じ2つのライブラリがあり、さらに「Add JAR」を使用して上記のプロジェクトのbin \フォルダーからのJARを含める場合があります。
2番目のスタブプロジェクト-最初のスタブプロジェクトと同じライブラリ
ビルドパスオプションの下にある他のタブのいずれかを使用して、「libプロジェクト」からJARを参照する必要がありますか?多分代わりに「プロジェクト」タブ、または「ソース」タブ?私は現在、それらの他の領域のいずれにもそれを持っていません。
奇妙な状態に入ると、「クリーンプロジェクト」を実行しても効果がありません。何度か試して、IDE=クリーニングの合間に開閉しましたが、解決できませんでした。
この時点で最終テスト段階にあるので、私の通常の毎日のタスクは次のとおりです。
LIBプロジェクトでマイナーアップデート(バグ修正)を行う
公開ウィザードを使用して両方のプロジェクトをエクスポートし、AndroidマーケットおよびAPKファイルを保持するその他の場所を更新します
そのため、複数のワークスペースを開いたり閉じたりする必要がなく、可能な場合は多くのビルドステップを実行する必要なく、これらの手順をシンプルにしたいと思います。
Properties
をクリックします。Java Build Path
を選択します。Libraries
タブを選択します。これは、ライブラリのコンパイル方法によって異なります。したがって、Add JARs...
またはAdd Class Folder
を実行します。 external
バリアントを選択して、外部ソースを使用します。それでおしまい。
Properties
をクリックします。Java Build Path
を選択します。Projects
タブを選択します。右側のAdd...
をクリックすると完了です。
2つのステップが必要です。
プロジェクトを右クリックして、Properties
を選択します。左側のAndroid
を選択し、チェックボックスIsLibrary
を選択します。できました。
プロジェクトを右クリックして、Properties
を選択します。左側のAndroid
とマークしたプロジェクトをAdd...
を選択します。リストに追加され、使用できるようになります。これで、参照され、マークされたプロジェクトからすべてのクラスとリソース(ドローアブル、文字列など)にアクセスできます。すごいね:)