2010年12月7日火曜日

【暫定対応】Android 2.3(Gingerbread)にしてUnable to execute dex: nullが出た時の対応

Android 2.3が公開されましたね。
早速アップデートしてみたのですが、今までの環境でapkが生成できたプロジェクトで、
Unable to execute dex: nullが出てapkが生成できませんでした。
そのときの暫定対処の方法をまとめました。


  • あくまで暫定なのでこの方法で正しいのかわかりません。

今までの環境でもUnable to execute dex: nullが出る場合はプロジェクトをクリアしたり、
eclipse.iniをいじることで(ヒープメモリをでかくする?)で直っていたようですが、
今回はうまくいかなかったので、他の原因を探ってみました。

私の環境での原因はおそらく、他のJavaプロジェクトで作成しているクラスを、
Androidプロジェクトで直接インポートして使用していたことがまずかったようです。

ですので、Androidプロジェクトで使用してるjavaファイルをまるっとAndroidプロジェクト側へ移動したところ、Unable to execute dex: nullが出なくなり、apkも生成されました。

とりあえずの対応ですので、JARを使用している場合などで出た場合の対処方法はわかりません。
とりあえずです。