アプリの開発をeclipseではなく、Visual Studio等で行っている場合、Androidでの動作を確認するためにeclipseをわざわざ立ち上げてビルドをするのは面倒です。

cocos2d-x 3系からcocosプロジェクト作成を行う cocos new コマンドの他に、ビルドと実行をしてくれる cocos run コマンドが実装されていますので、こちらを使ってみます。

以下は前回の「Cocos2d-x 3.4 Windows開発環境のセットアップ」の状態で、実行しています。

cocos run コマンド

まずはコマンドプロンプトを開き、プロジェクトのパスまで移動する。
その後、cocos run コマンドを実行。

cd /d D:\Cocos2d-x-Projects\SampleGame
cocos run -p android

ビルドされていきます。
あれ、そうするとこんなエラーが……。

BUILD FAILED
C:\Android\android-sdk\tools\ant\build.xml:601: The following error occurred while executing this line:
C:\Android\android-sdk\tools\ant\build.xml:720: The following error occurred while executing this line:
C:\Android\android-sdk\tools\ant\build.xml:734: Unable to find a javac compiler;

com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK.
It is currently set to “C:\Program Files (x86)\Java\jre7”

android_1

JAVA_HOMEのパスが見つからないせいか、JREをインストールしているパスとは別のパスを見にいっている模様。
また、どうやらJREではなく、JDKが必要らしい。

JDK インストール

インストールしていない場合は、JDK1.7(Java SE 7u)をインストールする。

http://www.oracle.com/technetwork/java/javase/downloads/index.html

android_2

android_3

環境変数のPATHに、JDKがインストールされているパスを追加させる。
そのままコマンドプロンプト上で

setx JAVA_HOME “C:\Program Files\Java\jdk1.7.0_75”

変数名:JAVA_HOME
変数値:JDKがインストールされているパス
(環境変数の追加方法はこのほかにもあるので、この方法でなくても良い)

成功: 指定した値は保存されました。
と表示されたら、一度、開いていたコマンドプロンプトを閉じる。(exit)

再度 cocos run コマンド

もう一度コマンドプロンプトを開いて、

cd /d D:\Cocos2d-x-Projects\SampleGame
cocos run -p android

うまくいくと、Androidのエミュレータや実機が立ち上がっていない場合、
– waiting for device –
でストップする。

Android エミュレータ (AVD) をコマンドから立ち上げる

エミュレータの場合は、もう一つコマンドプロンプトを立ち上げて

C:\Android\android-sdk\tools\emulator.exe -avd [AVD名]
(android-sdkまでのパスは環境に合わせて読み替える)

よく使いそうならば、emulator.exeの親ディレクトリパスを環境変数のPathに登録しておく。
以下のように実行することができる。

emulator -avd Nexus5

ちなみに-sオプションでプロジェクトのパスを指定することもできるので、bat化しておくのもよい。

cocos run -s D:\Cocos2d-x-Projects\SampleGame -p android