昨日に引き続きJenkinsの設定。Linuxの時と違う部分が割りとあって、案外キツイ。
まず、そもそもエミュレーターが起動しない。コレに関しては未だに原因不明。コンソールの出力を見るに
$ "F:\Program Files\Android\android-sdk/platform-tools/adb.exe" start-server $ "F:\Program Files\Android\android-sdk/tools/emulator.exe" -snapshot-list -no-window -avd hudson_ja-JP_240_WVGA_android-10 [android] Starting Android emulator and creating initial snapshot [android] Erasing existing emulator data... $ "F:\Program Files\Android\android-sdk/tools/emulator.exe" -no-boot-anim -ports 57373,57374 -prop persist.sys.language=ja -prop persist.sys.country=JP -avd hudson_ja-JP_240_WVGA_android-10 -no-snapshot-load -no-snapshot-save -wipe-data -no-window WARNING: Data partition already in use. Changes will not persist! WARNING: SD Card image already in use: C:\Users\numanuma08\.android\avd\hudson_ja-JP_240_WVGA_android-10.avd/sdcard.img ko:Snapshot storage already in use: C:\Users\numanuma08\.android\avd\hudson_ja-JP_240_WVGA_android-10.avd/snapshots.img * daemon not running. starting it now on port 57206 * * daemon started successfully
どうも、"emulator.exe"が二回呼び出されてエミュレーターが起動していなような?
とりあえず、エミュレーターの起動は置いておいて、apkファイルを吐き出すため、デバッグビルドとテストのビルドの設定を先に。
antの設定
どうやら、antの自動インストールはうまく起動しないみたい。公式サイト(http://ant.apache.org/) からant.1.8.3をダウンロードして、適当なフォルダに解凍。
Jenkinsの管理→システム設定→ant から、ANT_HOMEを設定。
バージョンがちょっと古いのは、開発機のantのバージョンに合わせているため。まあ、開発機のバージョン上げてもいいんだけども・・・。
JAVA_HOMEの設定
Windowsの環境変数%JAVA_HOME%を読みこんでくれるものと思っていたけど、どうやらそうでもないみたい。Linuxでは勝手に読み込んでくれたんだけどなぁ?
antと同じく
Jenkinsの管理→システム設定→JDK からJAVA_HOMEを設定
環境変数に注意
さて、各プロジェクトの設定に移るわけだけど、androidプロジェクトなので
android update project -p %WORKSPACE%\ProjectPath
の様に環境変数を使って、プロジェクトのパスを指定する必要がある。ただ、この時の環境変数けど
バッチファイル:%WORKSPACE%
Jenkinsの設定:$WORKSPACE
と、Jenkinsの方はLinux,ライクな設定方法になっていた。だが、フォルダの区切り文字は\(バックスラッシュ)なので
ant でビルド の項目で、build.xml のパスを
$WORKSPACE\ProjectPath\build.xml
とする必要がある。面倒くさい...
Windowsバッチファイルのあれこれ
AndroidプロジェクトとAndroidTestプロジェクトを同じバッチファイル内でUpdateしようとするとなぜか失敗する。
これは落ちる |
- AndroidプロジェクトのUdate
- 何か処理
- AndroidTestプロジェクトのUpdate
としないと通らなかった。
これは通る |
とは言え、まだまだ問題は残っていて、そもそもテストの実行ができないとかもう色々と・・・。
エミュレーターの実行ができない件に関しては、原因が分からない・・・。
環境完成の先は長いです・・・。
「android update...」を「call android update...」にしてもAndroidプロジェクトとAndroidTestプロジェクト同時にできないですか?
返信削除なるほど、確かにWindowsですから call が使えますね
返信削除ですが、悲しいかなもうJenkinsOnWindowsはやめてしまったのです・・・
そのうち、WindowsPhoneのプロジェクトをJenkinsでビルドすることがあるかもしれないですが