プログラムは間違っていないのに、何故だろうと他の人も困っているようです。
------------------------------------------
Building DEX Failed!
D:\DATA\unity_projects\one_shoot\Temp/StagingArea> java -Xmx1024M -Djava.ext.dirs="C:/android-sdk-windows\platform-tools/lib/" -jar "C:/android-sdk-windows\platform-tools/lib/dx.jar" --dex --verbose --output=bin/classes.dex bin/classes.jar plugins
processing archive bin\classes.jar...
------------------------------------------
自分も色々試しました。
備忘メモを兼ねて残しておきます。
他の人がうまくいっていても、自分では駄目な場合がありました。
【方法1】 adb.exe が悪さをしている?
adb.exeのプロセスを切り、Unityだけを再起動したらうまくいったようです。
自分の場合は解消されませんでした……。
参考:
http://traumachicken.blogspot.com/2011/12/unitybuilding-dex-failed-adbkill.html
【方法2】 最新のJDKとJREを使用する
Unityのトラブルシューティングに載ってました。
Java環境が最新じゃないから起きるらしいです。
参考:
http://unity3d.com/support/documentation/Manual/TroubleShooting.html
http://java.com/ja/download/installed.jsp?detect=jre&try=1
でも解消せず……。
--------------- 追記 ---------------
JDKとJREの最新版はこちらにありました↓
http://www.oracle.com/technetwork/java/archive-139210.html
------------------------------------
【方法3】 64bitマシンを使っている人は、32bitのJava環境にすればうまくいく?
これも試したけど駄目でした。
参考:
http://forum.unity3d.com/threads/67817-I-will-pay-someone-to-show-me-how-to-integrate-admob/page2
【方法4】 Javaの環境変数を変える
「java -Xmx1024M」というコマンドを実行してビルドエラーになっているんだから、
「java -Xmx512M」にすればいいという発想。
システム環境変数↓
変数名 = _JAVA_OPTIONS
値 = -Xmx512M
これでもうまくいかず……。
参考:
http://forum.unity3d.com/threads/88119-Could-not-reserve-enough-space-for-object-heap-RESOLVED
【方法5】 プラグインを全部消して、入替える
うまくいったのがこの方法。
Eclipse側で作ったプラグインをUnity側に部分的に上書きコピーしていたのですが、
それが駄目な原因だったようです。
Unity側をのプラグインの中身を全部消してから、Eclipse側からすべてのファイルをコピーしてきました。
部分的な上書きだと、不要なファイルが残ってしまって悪さをしていたのかな……。
自前プラグインなので、Unityが3.5に公式アップデートした際の影響が心配です。
【原因】r22 以上ではビルド環境に変更が加えられており、古い Unity では対応できていない。
【対処】暫定的な対処ですが android-sdk/build-tools/17.0.0/ の中のものを全て android-sdk/platform-tools/ へ複製する。
かなり古い記事ですが同様の症状で別の解決策があったので報告まで。
Android SDK Tool のリビジョンが原因だったのですね。
そこまで考えが至っていませんでした。
また何かお気づきの点がありましたら、ご指摘いただけると嬉しいです。