Command-Line Usage

Cordova now ships with a set of command-line tools that make it easier for you to develop cross-platform applications. You can build, clean, and launch an emulator with a single command. You can consider these instructions as an alternative to the Platform Guides. Whereas the Platform Guides help you get setup with the default IDEs and tooling surrounding the platforms you are working with, the command-line tools aim to provide a shell-based approach to creating and working with Cordova projects.

Supported Platforms

Windows Phone

The Windows Phone command-line tools support creating, building, and running new projects. Commands must be run from a cmd or powershell prompt.

The WP8 repo now includes code for building both WP7 + WP8 apps. The repo has subfolders for each: wp7/ and wp8/

Create a project

Run the create command with the following parameters:

  • Path to your new Cordova Windows Phone project
  • Package Name, following reverse-domain style convention ( this becomes the default Namespace )
  • Project name
// create a new wp8 Cordova project
$ C:\path\to\cordova-wp8\wp8\bin\create C:\path\to\my_new_cordova_project com.example.cordova_project_name CordovaProjectName

// create a new wp7 Cordova project
$ C:\path\to\cordova-wp8\wp7\bin\create C:\path\to\my_new_cordova_project com.example.cordova_project_name CordovaProjectName

Building your project (cleans then builds)

  • Debug
$ C:\path\to\my_new_cordova_project\cordova\build --debug
  • Release
$ C:\path\to\my_new_cordova_project\cordova\build --release

Running your application

Run the 'run' command with the following optional parameters

  • Target specification. This includes --emulator, --device, or --target=<targetID>.
  • Build specification. This includes --debug, --release, or --nobuild.
$ C:\path\to\my_new_cordova_project\cordova\run [Target] [Build]

By default the run command will look for a connected device, if no device is found it will look for any started emulators. If you have multiple emulators, you can specify a target ID.

Cleaning

$ C:\path\to\my_new_cordova_project\cordova\clean

iOS

The iOS command-line tools are built upon shell scripts and rely on Xcode command-line tools such as xcode-select and xcodebuild.

Create a project

Run the create command with the following parameters:

  • Path to your new Cordova iOS project
  • Package name, following reverse-domain style convention
  • Project name
$ ./path/to/cordova-ios/bin/create /path/to/my_new_cordova_project com.example.cordova_project_name CordovaProjectName

Build a project

$ /path/to/my_new_cordova_project/cordova/build

Run app on emulator

$ /path/to/my_new_cordova_project/cordova/run

Releasing

$ /path/to/my_new_cordova_project/cordova/release

Logging

$ /path/to/my_new_cordova_project/cordova/log

Android

The Android command-line tools are built upon shell scripts. You must have the Android SDK's tools and platform-tools folders in your PATH!

Create a project

Run the create command with the following parameters:

  • Path to your new Cordova Android project
  • Package name, following reverse-domain style convention
  • Main Activity name
$ /path/to/cordova-android/bin/create /path/to/my_new_cordova_project com.example.cordova_project_name CordovaProjectName

or, on Windows

$ C:\path\to\cordova-android\bin\create.bat C:\path\to\my_new_cordova_project com.example.cordova_project_name CordovaProjectName

Building your project (cleans then builds)

  • Debug
$ /path/to/my_new_cordova_project/cordova/build --debug

or, on Windows

$ C:\path\to\my_new_cordova_project\cordova\build.bat --debug
  • Release
$ /path/to/my_new_cordova_project/cordova/build --release

or, on Windows

$ C:\path\to\my_new_cordova_project\cordova\build.bat --release

Running your application

Run the 'run' command with the following optional parameters

  • Target specification. This includes --emulator, --device, or --target=<targetID>.
  • Build specification. This includes --debug, --release, or --nobuild.
$ /path/to/my_new_cordova_project/cordova/run [Target] [Build]

or, on Windows

$ C:\path\to\my_new_cordova_project\cordova\run.bat [Target] [Build]

Make sure you create at least one Android Virtual Device, otherwise you're prompted to do so with the android command. If you have multiple AVDs, you're prompted to select one. By default the run command will detect a connected device. When no device is found, it will detect a running emulator.

Logging

$ /path/to/my_new_cordova_project/cordova/log

or, on Windows

$ C:\path\to\my_new_cordova_project\cordova\log.bat

Cleaning

$ /path/to/my_new_cordova_project/cordova/clean

or, on Windows

$ C:\path\to\my_new_cordova_project\cordova\clean.bat

BlackBerry

The BlackBerry command-line tools are built upon shell scripts.

Create a project

Run the create command with the following parameters:

  • Path to your new Cordova BlackBerry project
  • Placeholder package name
  • Application name
$ /path/to/cordova-blackberry-webworks/bin/create /path/to/my_new_cordova_project com.example.cordova_project_name CordovaProjectName

or, on Windows

$ /path/to/cordova-blackberry-webworks/bin/create.bat /path/to/my_new_cordova_project com.example.cordova_project_name CordovaProjectName

NOTE: The BlackBerry platform ignores the package name placeholder (com.example.cordova_project_name), but it's still required for use by cross-platform tools.

Build a project

For BlackBerry projects, please make sure you customize the project.properties file in your Cordova project's root directory. You need to do so to supply your BlackBerry signing key password, and specify locations for the BlackBerry WebWorks SDK and BlackBerry simulator executables.

$ /path/to/my_new_cordova_project/cordova/build <platform>

or, on Windows

$ /path/to/my_new_cordova_project/cordova/build.bat <platform>

Launch simulator

For BlackBerry projects, please make sure you customize the project.properties file in the root of your Cordova project folder. You need to do so to supply your BlackBerry signing key password, and specify locations for the BlackBerry WebWorks SDK and BlackBerry simulator executables.

$ /path/to/my_new_cordova_project/cordova/run <platform>

and then choose 'no' when prompted with:

Do you have a BlackBerry device connected to your computer? (y/n)

or, on Windows

$ /path/to/my_new_cordova_project/cordova/run <platform>

and then choose 'no' when prompted with:

Do you have a BlackBerry device connected to your computer? (y/n)

Logging

Unfortunately, streaming logs directly from the device is currently unsupported. However, BlackBerry offers built-in Web Inspector support for Playbook and BlackBerry smartphone devices running BlackBerry OS 7.0 and above. You can also access your application's logs (including any calls to console.log) on your device by holding down the ''ALT'' key from the home screen and typing ''lglg'' keys.

BlackBerry 10

Command-line tools are based on shell scripts. If you need help with a command, type the command with the -h or -help arguments, which are supported by all commands and which will provide descriptions for each of the available arguments.

The following commands are available:

create

The 'create' command creates a new project:

bin/create <path-to-project>

target

The target command allows you to manage the BlackBerry device(s) or simulator that you will use to test your app. You can add or remove a target, or set a target as the default target.

Add a target

<path-to-project>/cordova/target  add  <name>  <ip-address>  <device | simulator>  [-p | --password <password>]  [--pin <device-pin>]

where

  • <name> specifies a unique name for the target.
  • <ip-address> specifies the ip address of the BlackBerry device or simulator.
  • -p|--password <password> specifies the password for the device or simulator. This is required only if the device or simulator is password protected.
  • --pin <device-pin> specifies the PIN of the BlackBerry device, which identifies that device as a valid host for the debug token. This argument is required only if you are creating a debug token.

Remove a target

<path-to-project>/cordova/target  remove  <name>

Set a target as the default

<path-to-project>/cordova/target  default  <name>

build

The build command builds the project as a .bar file. You can build your app in either release mode (which produces a signed .bar file) or in debug mode (which produces an unsigned .bar file).

Build your project in release mode

<path-to-project>/cordova/build  release  -k|--keystorepass <password>  [-b|--buildId <number>]  [-p|--params <params-JSON-file>]

where

  • -k|--keystorepass <password> specifies the password you defined when you configured your computer to sign applications.
  • -b|--buildId <number> specifies the build version number of your application. Typically, this number should be incremented from the previous signed version. This argument is optional.
  • -p|--params <params-JSON-file> specifies a JSON file containing additional parameters to pass to downstream tools. This argument is optional.

Build your project in debug mode

<path-to-project>/cordova/build  debug  [<target>]  [-k|--keystorepass <password>]  [-p|--params <params-JSON-file>]  [-ll|--loglevel <error|warn|verbose>]

where

  • <target> specifies the name of a previously added target. If <target> is not specified, the default target is used, if one has been created. This argument is only required if you want the script to deploy your app to a BlackBerry device or simulator and you have not created a default target. Additionally, if <target> is a device, then that device must be connected to your computer by USB connection or be connected to the same Wi-Fi network as your computer.
  • -k|--keystorepass <password> specifies the password you defined when you configured your computer to sign applications. This password is also used to create your debug token. This argument is only required if you want the script to create and install the debug token for you.
  • -p|--params <params-JSON-file> specifies a JSON file containing additional parameters to pass to downstream tools.
  • -ll|--loglevel <level> specifies the log level. The log level may be one of error, warn, or verbose.

If you have previously defined a default target (and previously installed a debug token, if that target is a BlackBerry device), you can run the script with no arguments, and the script will package your app and deploy it to the default target. For example:

<path-to-project>/cordova/build debug

run

The run command deploys the app on the specified BlackBerry device or a simulator. Before deploying your app, you must first create a target for the device or simulator you want to deploy your app to. The deploy script will deploy the most recent build of your app.

<path-to-project>/cordova/run <target>

where

  • <target> specifies the name of a previously added target. If <target> is a device, then that device must be connected to your computer by USB connection or be connected to the same Wi-Fi network as your computer.

plugin

The target command allows you to add and remove plugins

Fetch a locally-hosted plugin

<path-to-project>/cordova/plugin fetch <path-to-plugin>

View a list of installed plugins

<path-to-project>/cordova/plugin ls

Add a plugin

<path-to-project>/cordova/plugin add <name>

Remove a plugin

<path-to-project>/cordova/plugin rm <name>

Windows 8

The Windows 8 command line tools support creating new projects only. Commands must be run from a cmd or powershell prompt.

Create a project

Run the create command with the following parameters:

  • Path to your new Cordova Windows 8 project
  • Package Name, following reverse-domain style convention ( this becomes the default Namespace )
  • Project name