ここに問題があります。私はそれに何日も費やし、すべてのデータベースを検索しました。そのため、適切な単語を検索しなかったか、答えがないかのどちらかです。うまくいけば「まだ」です。
症状: - Android プロジェクトのコンパイル DX は、プロジェクトがビルドされるたびにすべての jar をコンパイルします - 1 回実行するだけで十分な理由はありません。数分かかります。
本当の問題:
- 複数の Jar を追加すると、eclipse がクラッシュする原因になります -- 現在、これはこれらの設定 (重い jar) にあります。
(実際にはパフォーマンスが向上するため、Eclipse のコンパイルが遅い場合は、-XX:+UseParallelGC を追加できます) DX が jar をコンパイルしている間に動作しますが、その間を試行しますが、CPU がビジーでそれができないため、それぞれ 3MB の 4 番目から 5 番目の jar に到達する時点で、ヒープに 600MB のようなものがあります。これはgcoverheadlimit を使用した理由)
それらの1つまたは複数を一緒にコンパイルすると、(同じAndroidプロジェクト内で)うまくコンパイルされます。問題は、それらを個別にコンパイルする方法が見つからないことです(クライアントデバイスにapkをインストールする必要があります)。それらをまとめてコンパイルすると、Eclipse がクラッシュします。
cmdとDXを使用してそれらを1つずつコンパイルしようとしましたが、ビルドされていますが、eclispeでプロジェクトをビルドすると再ビルドされるため、何もしなかったようで、jarをDEXファイルに変換しようとしても役に立ちませんでした.
Javaヒープサイズに関する多くの投稿を赤くしましたが、これは私の場合ではなく、gcoverheadlimitを使用しました.jarが多すぎるとクラッシュします.
すべてを要約すると、Javaの通常のjarをDalvik形式に変換し、それをリソースとしてAndroidプロジェクトに追加したいので、プロジェクトがコンパイルされたら、jarをDalvik形式に変換する必要はありません。