0

Windows プラットフォームで Android アプリを開発しています。コマンドライン ツールを使用して、Android アプリをローカル マシン上で問題なく作成およびビルドできます。

Jenkins を使用してリモートでアプリを構築することにしました。Windows スレーブを正常に作成し、コマンド ライン ツールを使用してテスト アプリを作成することができました。しかし、これでリモートでエミュレートすることはできません:

C:\Dev\workspace\com.this.test\cordova\cordova.bat

この行はローカルで機能しますが、Jenkins で使用すると、このエラーが発生します。

c:\Dev\jenkins\workspace\buildtest>C:\Dev\workspace\com.this.test\cordova\cordova.bat emulate 
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.

You don't have any Android Virtual Devices. Please create at least one AVD.
android
Build step 'Execute Windows batch command' marked build as failure 

編集: 次のコマンドをローカルで実行すると、

%comspec% /c android.bat list avd

以下のようにAVDをリストします。

Available Android Virtual Devices:
    Name: ap16
    Path: C:\Users\tt\.android\avd\ap16.avd
  Target: Android 4.1.2 (API level 16)
     ABI: armeabi-v7a
    Skin: WVGA800

しかし、Jenkins経由で送信すると、次のようにしか言われません:

Available Android Virtual Devices:
4

2 に答える 2

0

リモート マシンにエミュレータを作成しましたか? つまり、android create avdコマンド ラインから、または SDK Manager ツールを使用します。

もっと簡単に言えば、Android Emulator Pluginをインストールして、エミュレーターの作成を自動的に処理することもできます。


詳細情報が提供された後、編集します。

作成されたエミュレーターはユーザーごとです — マシンのすべてのユーザー間で共有されるわけではありません。

おそらく、Jenkins を別のユーザー (たとえば、Jenkins を Windows サービスとして実行するシステム ユーザー) として実行していると思われます。したがって、アカウントにログインしたときとは異なるエミュレータのセットが表示されます。

Jenkins が必要なときに独自のエミュレーターを作成できるように、エミュレーター プラグインを使用することを引き続きお勧めします (ただし、Windows システム アカウントとしての実行に関する「既知の問題」に注意してください)。あるいは、エミュレーターを Jenkins アカウントとして手動で作成するか、Jenkins サービスを通常のユーザーとして「実行」するように変更することもできます。

于 2012-11-10T16:49:01.777 に答える