Spec-Zone.ru › Cordova 8

Справочник по командной строке Cordova (CLI)

Синтаксис

cordova <command> [options] -- [platformOpts]

Список глобальных команд

Эти команды доступны всегда.

Команда Описание
create Создать проект
help Получить помощь по команде
telemetry Включить или выключить сбор телеметрии
config Установить, получить, удалить, изменить и перечислить глобальные параметры cordova

Список команд для проекта

Эти команды поддерживаются, когда текущий рабочий каталог является корректным проектом Cordova.

Команда Описание
info Сгенерировать информацию о проекте
requirements Проверяет и выводит все требования к установке для указанных платформ
platform Управление платформами проекта
plugin Управление плагинами проекта
prepare Копирование файлов на платформы для сборки
compile Сборка платформ
clean Очистка проекта от артефактов сборки
run Запуск проекта (включая prepare и compile)
serve Запуск проекта с локальным веб-сервером (включая prepare)

Общие параметры

Эти параметры применяются ко всем командам cordova-cli.

Параметр Описание
-d или --verbose Вывод более подробной информации в консоль. Вы также можете подписаться на события log и warn, если используете cordova-cli в качестве модуля Node.js, вызвав cordova.on('log', function() {}) или cordova.on('warn', function() {}).
-v или --version Выводит версию установленного cordova-cli.
--no-update-notifier Отключить проверку обновлений. В качестве альтернативы установите "optOut": true в ~/.config/configstore/update-notifier-cordova.json или задайте переменную окружения NO_UPDATE_NOTIFIER с любым значением (см. подробности в документации update-notifier).
--nohooks Отменить выполнение хуков (принимая шаблоны хуков RegExp в качестве параметров)
--no-telemetry Отключить сбор телеметрии для текущей команды.

Параметры, специфичные для платформы

У определенных команд есть параметры (platformOpts), специфичные для конкретной платформы. Они могут быть переданы в cordova-cli с разделителем '--', который останавливает разбор команды внутри модуля cordova-lib и передает оставшиеся параметры для обработки платформами.

Примеры

  • В этом примере показано, как cordova-cli можно использовать для создания проекта с плагином camera и запуском его на платформе android. В частности, можно использовать параметры, специфичные для платформы, такие как --keystore.

    # Create a cordova project
    cordova create myApp com.myCompany.myApp myApp
    cd myApp
    # Add camera plugin to the project and remember that in config.xml & package.json.
    cordova plugin add cordova-plugin-camera
    # Add camera plugin to the project and remember that in config.xml and package.json. 
    cordova plugin add cordova-plugin-camera
    # Add android platform to the project and remember that in config.xml & package.json.
    cordova platform add android
    # Check to see if your system is configured for building android platform.
    cordova requirements android
    # Build the android and emit verbose logs.
    cordova build android --verbose
    # Run the project on the android platform.
    cordova run android
    # Build for android platform in release mode with specified signing parameters.
    cordova build android --release -- --keystore="..\android.keystore" --storePassword=android --alias=mykey
    

Команда cordova create

Краткое описание

Создаёт структуру каталогов для проекта Cordova в указанном пути.

Синтаксис

cordova create path [id [name [config]]] [options]
Значение Описание
path Директория, которая ещё не существует. Cordova создаст эту директорию. Более подробную информацию о структуре директорий см. ниже.
id По умолчанию: io.cordova.hellocordova
Идентификатор в стиле обратного домена, который сопоставляется с атрибутом id элемента widget в config.xml. Его можно изменить, но может быть сгенерирован код, использующий это значение, например, имена пакетов Java. Рекомендуется выбрать подходящее значение.
name По умолчанию: HelloCordova
Заголовок приложения для отображения, который сопоставляется с элементом name в файле config.xml. Его можно изменить, но может быть сгенерирован код, использующий это значение, например, имена классов Java. Значение по умолчанию — HelloCordova, но рекомендуется выбрать подходящее значение.
config Строка JSON, чьи ключ/значения будут включены в <path>/.cordova/config.json

Параметры

Параметр Описание
--template Использовать пользовательский шаблон, расположенный локально, в NPM или GitHub.
--copy-from\ --src
--link-to Создать символическую ссылку на указанную www директорию без создания копии.

Структура каталогов

Cordova CLI работает со следующей структурой каталогов:

myapp/
|-- config.xml
|-- hooks/
|-- merges/
| | |-- android/
| | |-- windows/
| | |-- ios/
|-- www/
|-- platforms/
| |-- android/
| |-- windows/
| |-- ios/
|-- plugins/
  |--cordova-plugin-camera/

config.xml

Настраивает ваше приложение и позволяет настроить поведение вашего проекта. См. также документацию по config.xml

www/

Содержит веб-артефакты проекта, такие как файлы .html, .css и .js. Как разработчик Cordova, большая часть вашего кода и ресурсов будет здесь. Они будут скопированы при каждой cordova prepare в директорию www каждой платформы. Исходный каталог www воспроизведён внутри каждого подкаталога платформы, например, в platforms/ios/www или platforms/android/assets/www. Поскольку CLI постоянно копирует файлы из исходной папки www, вам следует редактировать только эти файлы, а не файлы, расположенные в подкаталогах платформ. Если вы используете систему контроля версий, вы должны добавить этот исходный каталог www, а также каталог merges, в систему контроля версий.

platforms/

Содержит весь исходный код и скрипты сборки для платформ, которые вы добавляете в свой проект.

ПРЕДУПРЕЖДЕНИЕ: При использовании CLI для сборки приложения, не следует изменять файлы в каталоге /platforms/, если вы не знаете, что делаете, или если документация не указывает иного. Файлы в этом каталоге регулярно перезаписываются при подготовке приложений к сборке или при повторной установке плагинов.

plugins/

Все добавленные плагины будут извлечены или скопированы в этот каталог.

hooks/

Этот каталог может содержать скрипты, используемые для настройки команд cordova-cli. Любые скрипты, которые вы добавите в эти каталоги, будут выполнены до и после команд, соответствующих имени каталога. Полезно для интеграции собственных систем сборки или интеграции с системами контроля версий.

Для получения дополнительной информации обратитесь к Руководству по хукам.

merges/

Платформо-специфические веб-ресурсы (файлы HTML, CSS и JavaScript) содержатся в соответствующих подкаталогах в этом каталоге. Они развертываются во время prepare в соответствующий каталог нативной платформы. Файлы, размещённые в merges/, перекроют соответствующие файлы в каталоге www/ для соответствующей платформы. Пример, предполагая структуру проекта:

merges/
|-- ios/
| -- app.js
|-- android/
| -- android.js
www/
-- app.js

После сборки Android и iOS проектов, Android приложение будет содержать как app.js, так и android.js. Однако iOS приложение будет содержать только app.js, и это будет тот, что из merges/ios/app.js, перекрывая "общий" app.js, расположенный внутри www/.

Система контроля версий

Не рекомендуется включать каталоги platforms/ и plugins/ в систему контроля версий, так как они считаются артефактами сборки. Ваши платформы и плагины будут сохранены в config.xml и package.json автоматически. Эти платформы/плагины будут загружены при вызове cordova prepare.

Примеры

  • Создайте проект Cordova в директории myapp с указанным идентификатором и именем для отображения:

    cordova create myapp com.mycompany.myteam.myapp MyApp
    
  • Создайте проект Cordova с символической ссылкой на существующую www директорию. Это может быть полезно, если у вас есть собственный процесс сборки или существующие веб-ресурсы, которые вы хотите использовать в приложении Cordova:

    cordova create myapp --link-to=../www
    

Команда cordova platform

Краткое описание

Управление платформами Cordova — добавление, удаление, обновление, просмотр и проверка обновлений. Выполнение команд по добавлению или удалению платформ влияет на содержимое каталога platforms проекта.

Синтаксис

cordova {platform | platforms} [
    add <platform-spec> [...] {--save | link=<path> } |
    {remove | rm}  platform [...] {--save}|
    {list | ls}  |
    check |
    save |
    update ]
Подкоманда Опция Описание
add <platform-spec> [...] Добавить указанные платформы
--nosave Не сохранять <platform-spec> в config.xml и package.json после их установки с помощью тега <engine>
--link=<path> Если <platform-spec> — это локальный путь, создать символическую ссылку на библиотеку платформы вместо копирования (поддержка зависит от платформы; полезно для разработки платформы)
remove <platform> [...] Удалить указанные платформы
--nosave Не удалять указанные платформы из config.xml и package.json после их удаления
update platform [...] Обновить указанные платформы
--save Обновляет версию, указанную в config.xml
list Вывести список всех установленных и доступных платформ
check Вывести список платформ, которые можно обновить с помощью cordova-cli командой platform update
save Сохранить <platform-spec> всех добавленных платформ в config.xml

Спецификация платформы

Существует несколько способов указать платформу:

<platform-spec> : platform[@version] | path | url[#commit-ish]
Значение Описание
platform Имя платформы, например, android, ios, windows и т.д., для добавления в проект. Каждая версия cordova CLI фиксирует версию для каждой платформы. Если версия не указана, используется эта версия для добавления платформы.
version Спецификация версии Major.minor.patch, используя semver
path Путь к каталогу или tar-архиву, содержащему платформу
url URL до git-репозитория или tar-архива, содержащего платформу
commit-ish Ссылка на коммит/тег/ветку. Если не указано, используется 'master'

Поддерживаемые платформы

  • Android
  • iOS
  • Windows (8.1, Phone 8.1, UWP — Windows 10)
  • Blackberry10
  • Ubuntu
  • Browser

Устаревшие платформы

  • Amazon-fireos (используйте платформу Android вместо этого)
  • WP8 (используйте платформу Windows вместо этого)
  • Windows 8.0 (используйте более старые версии cordova)
  • Firefox OS (используйте более старые версии cordova)

Примеры

  • Добавьте закреплённую версию платформы android и ios и сохраните загруженную версию в config.xml и package.json:

    cordova platform add android ios
    
  • Добавьте платформу android с версией semver ^5.0.0 и сохраните её в config.xml и package.json:

    cordova platform add android@^5.0.0
    
  • Добавьте платформу, клонировав указанный git репозиторий и переключив ветку на тэг 4.0.0:

    cordova platform add https://github.com/myfork/cordova-android.git#4.0.0
    
  • Добавьте платформу, используя локальную директорию с именем android:

    cordova platform add ../android
    
  • Добавьте платформу, используя указанный tarball:

    cordova platform add ../cordova-android.tgz
    
  • Удалите платформу android из проекта и удалите её из config.xml и package.json:

    cordova platform rm android
    
  • Удалите платформу android из проекта, но не удаляйте её из config.xml и package.json:

    cordova platform rm android --nosave
    
  • Отобразить доступные и установленные платформы с номерами версий. Это полезно для поиска номеров версий при сообщении об ошибках:

    cordova platform ls
    
  • Сохраните версии всех платформ, в настоящее время добавленных в проект, в config.xml и package.json

    cordova platform save
    

команда cordova plugin

Краткое описание

Управление плагинами проекта

Синтаксис

cordova {plugin | plugins} [
    add <plugin-spec> [..] {--searchpath=<directory> | --noregistry | --link | --save | --browserify | --force} |
    {remove | rm} {<pluginid> | <name>} --save |
    {list | ls} |
    search [<keyword>] |
    save |
]
Подкоманда Опция Описание
add <plugin-spec> [...] Добавить указанные плагины
--searchpath <directory> При поиске плагинов по идентификатору, искать в этом каталоге и каждом из его подкаталогов прежде, чем обратиться к реестру. Можно указать несколько путей поиска. Используйте ':' в качестве разделителя в системах на базе *nix, и ';' для Windows.
--noregistry Не искать плагины в реестре.
--link При установке из локального пути, создаёт символическую ссылку вместо копирования файлов. Степень связи файлов варьируется в зависимости от платформы. Полезно для разработки плагинов.
--nosave НЕ сохранять плагин как часть элемента <plugin-spec> в plugin или config.xml или package.json.
--browserify Компилировать плагин JS во время сборки с использованием browserify вместо выполнения.
--force Введено в версии 6.1. Принудительно копирует исходные файлы плагина, даже если такой же файл уже существует в целевой директории.
remove ` ` [...]
--nosave Не удалять указанный плагин из config.xml или package.json
list Отобразить список установленных плагинов
search [<keyword>] [...] Искать плагины на http://plugins.cordova.io, соответствующие ключевым словам
save Сохранить <plugin-spec> всех плагинов, в данный момент добавленных в проект

Описание плагина

Существует несколько способов указать плагин:

<plugin-spec> : [@scope/]pluginID[@version]|directory|url[#commit-ish][:subdir]
Значение Описание
scope Область действия плагина, опубликованного как scoped npm пакет
plugin Идентификатор плагина (идентификатор плагина в npm реестре или в --searchPath)
version Спецификатор версии Major.minor.patch с использованием semver
directory Директория, содержащая plugin.xml
url URL к git репозиторию, содержащему plugin.xml
commit-ish Ссылка на коммит/тэг/ветку. Если не указано, используется 'master'

Алгоритм разрешения плагинов

При добавлении плагина в проект, CLI разрешит плагин, основываясь на следующих критериях (в порядке убывания приоритета):

  1. Указанный plugin-spec в команде (например, cordova plugin add pluginID@version)
  2. Сохранённая plugin-spec в config.xml и package.json (т.е. если плагин был ранее добавлен без --nosave)
  3. Начиная с версии Cordova 6.1, последняя опубликованная версия плагина в npm, которую может поддерживать текущий проект (применимо только к плагинам, которые перечисляют свои зависимости Cordova в своём package.json)
  4. Последняя опубликованная версия плагина в npm

Примеры

  • Добавьте cordova-plugin-camera и cordova-plugin-file в проект и сохраните его в config.xml и package.json. Используйте директорию ../plugins для поиска плагинов.

    cordova plugin add cordova-plugin-camera cordova-plugin-file --save --searchpath ../plugins
    
  • Добавьте cordova-plugin-camera с версией semver ^2.0.0 и сохраните её в config.xml и package.json:

    cordova plugin add cordova-plugin-camera@^2.0.0
    
  • Добавьте плагин из указанной локальной директории:

    cordova plugin add ../cordova-plugin-camera
    
  • Добавьте плагин из указанного файла tarball:

    cordova plugin add ../cordova-plugin-camera.tgz
    
  • Удалите плагин из проекта и config.xml и package.json:

    cordova plugin rm camera
    
  • Удалите плагин из проекта, но не удаляйте его из config.xml или package.json:

    cordova plugin rm camera --nosave
    
  • Отобразить все установленные в проекте плагины:

    cordova plugin ls
    

Конфликтующие плагины

Конфликтующие плагины могут возникнуть при добавлении плагинов, которые используют теги edit-config в файле plugin.xml. edit-config позволяет плагинам добавлять или заменять атрибуты XML элементов.

Эта функция может вызвать проблемы с приложением, если более одного плагина пытается изменить один и тот же XML элемент. Введена проверка на конфликты, чтобы предотвратить добавление плагинов, если один плагин пытается перезаписать изменения другого плагина в edit-config. При обнаружении конфликта в edit-config будет выброшено исключение, и плагин не будет добавлен. В сообщении об ошибке будет указано, что все конфликты необходимо разрешить, прежде чем плагин можно будет добавить. Одним из способов разрешения конфликта edit-config является внесение изменений в plugin.xml соответствующих плагинов, чтобы они не изменяли один и тот же XML элемент. Другой вариант - использовать флаг --force для принудительного добавления плагина. Этот вариант следует использовать с осторожностью, поскольку он игнорирует проверку на конфликты и перезапишет все конфликты с другими плагинами, тем самым может оставить другие плагины в плохом состоянии.

Обратитесь к руководству plugin.xml для управления edit-config, разрешения конфликтов и примеров.

команда cordova prepare

Краткое описание

Преобразует метаданные config.xml в платформенно-специфичные файлы манифеста, копирует значки и splash экраны, копирует файлы плагинов для указанных платформ, чтобы проект был готов к сборке с каждой нативной SDK.

Синтаксис

cordova prepare [<platform> [..]]
     [--browserify]

Опции

Опция Описание
<platform> [..] Имя(а) платформы(платформ) для подготовки. Если не указано, все платформы будут подготовлены.
--browserify Компилировать плагин JS во время сборки с использованием browserify вместо выполнения.

команда cordova compile

Краткое описание

cordova compile - это подмножество команды cordova build. Она выполняет только этап компиляции без подготовки. Обычно вызывается cordova build вместо этой команды - однако, эта стадия полезна для расширения с помощью плагинов.

Синтаксис

cordova build [<platform> [...]]
    [--debug|--release]
    [--device|--emulator|--target=<targetName>]
    [--buildConfig=<configfile>]
    [--browserify]
    [-- <platformOpts>]

Для подробной документации см. документацию по команде cordova build ниже.

команда cordova build

Краткое описание

Сокращение для cordova prepare + cordova compile для всех/указанных платформ. Позволяет собрать приложение для указанной платформы.

Синтаксис

cordova build [<platform> [...]]
    [--debug|--release]
    [--device|--emulator]
    [--buildConfig=<configfile>]
    [--browserify]
    [-- <platformOpts>]
Опция Описание
<platform> [..] Имя(а) платформы(платформ) для сборки. Если не указано, все платформы будут собраны.
--debug Выполнить отладочную сборку. Это, как правило, означает отладочный режим для платформы, подлежащей сборке.
--release Выполнить релизную сборку. Это, как правило, означает релизный режим для платформы, подлежащей сборке.
--device Собрать для устройства
--emulator Собрать для эмулятора. В частности, архитектура платформы может отличаться для устройства и эмулятора.
--buildConfig=<configFile> По умолчанию: build.json в корневой директории cordova.
Использовать указанный файл конфигурации сборки. Файл build.json используется для указания параметров для настройки процесса сборки приложения, особенно для подписи пакета.
--browserify Компилировать плагин JS во время сборки с использованием browserify вместо выполнения
<platformOpts> Для предоставления платформно-специфических опций, вы должны включить их после разделителя --. См. документацию по платформе для получения дополнительной информации.

Примеры

  • Собрать для платформ android и windows в режиме debug для развертывания на устройстве:

    cordova build android windows --debug --device
    
  • Собрать для платформы android в режиме release и использовать указанный файл конфигурации сборки:

    cordova build android --release --buildConfig=..\myBuildConfig.json
    
  • Собрать для платформы android в релизном режиме и передать пользовательские платформенные параметры для процесса сборки android:

    cordova build android --release -- --keystore="..\android.keystore" --storePassword=android --alias=mykey
    

команда cordova run

Краткое описание

Подготавливает, собирает и развёртывает приложение на указанных платформах устройствах/эмуляторах. Если подключено устройство, оно будет использовано, если не запущен подходящий эмулятор.

Синтаксис

cordova run [<platform> [...]]
    [--list | --debug | --release]
    [--noprepare] [--nobuild]
    [--device|--emulator|--target=<targetName>]
    [--buildConfig=<configfile>]
    [--browserify]
    [-- <platformOpts>]
Опция Описание
<platform> [..] Имя(а) платформы(платформ) для запуска. Если не указано, запускаются все платформы.
--list Список доступных целей. Отображаются как цели развертывания устройств, так и эмуляторов, если не указано другое.
--debug Развёртывание отладочной сборки. Это поведение по умолчанию, если не указано --release.
--release Развертывание релизной сборки
--noprepare Пропустить подготовку (доступно в Cordova v6.2 и более поздних версиях)
--nobuild Пропустить сборку
--device Развертывание на устройстве
--emulator Развертывание в эмуляторе
--target Развертывание на определённой целевой эмуляторе/устройстве. Используйте --list для отображения опций целевых платформ.
--buildConfig=<configFile> По умолчанию: build.json в корневом каталоге cordova.
Используйте указанный файл конфигурации сборки. Файл build.json используется для указания параметров настройки процесса сборки приложения, особенно связанных с подписью пакета.
--browserify Компиляция JS плагинов во время сборки с помощью browserify вместо выполнения
<platformOpts> Чтобы предоставить платформенно-специфичные опции, вы должны включить их после разделителя --. Для получения более подробной информации ознакомьтесь с документацией по руководству платформы.

Примеры

  • Запуск релизной сборки текущего проекта cordova на эмуляторе платформы android с именем Nexus_5_API_23_x86. Используйте указанную конфигурацию сборки при выполнении:

    cordova run android --release --buildConfig=..\myBuildConfig.json --target=Nexus_5_API_23_x86
    
  • Запуск отладочной сборки текущего проекта cordova на платформе android с использованием устройства или эмулятора (если устройство не подключено). Пропустить сборку:

    cordova run android --nobuild
    
  • Запуск отладочной сборки текущего проекта cordova на устройстве ios.

    cordova run ios --device
    
  • Перечислить имена всех подключенных устройств и доступных эмуляторов, которые могут быть использованы для запуска этого приложения:

    cordova run ios --list
    

Команда cordova emulate

Синтаксис

Псевдоним для cordova run --emulator. Запускает эмулятор вместо устройства. Для получения дополнительной информации см. документацию по команде cordova run.

Команда cordova clean

Синтаксис

Очищает артефакты сборки для всех платформ или для указанной платформы, выполняя очистку сборки конкретной платформы.

Синтаксис

cordova clean [<platform> [...]]

Пример

  • Очистка артефактов сборки платформы android.

    cordova clean android
    

Команда cordova requirements

Синтаксис

Проверяет и выводит все требования для указанных платформ (или для всех платформ, добавленных в проект, если не указано ничего) . Если все требования для каждой платформы выполнены, завершается с кодом 0, в противном случае завершается с ненулевым кодом.

Это может быть полезно при настройке машины для сборки конкретной платформы.

Синтаксис

cordova requirements android

Команда cordova info

Синтаксис

Выводит полезную информацию, которая полезна для отправки отчетов об ошибках и получения помощи. Создает файл info.txt в корне вашего проекта.

Синтаксис

cordova info

Команда cordova serve

Синтаксис

Запускает локальный веб-сервер для ресурсов www/ с использованием указанного port или значения по умолчанию 8000. Доступ к проектам по адресу: http://HOST_IP:PORT/PLATFORM/www.

Синтаксис

cordova serve [port]

Команда cordova telemetry

Синтаксис

Включает или отключает сборку телеметрии.

Синтаксис

cordova telemetry [STATE]
Опция Описание
on Включить сбор телеметрии.
off Выключить сбор телеметрии.

Детали

При первом запуске cordova отображается временный запрос к пользователю, предлагающий выбрать включение или отключение телеметрии. Он длится 30 секунд, после чего пользователь автоматически отключается от телеметрии, если не предоставит ответа. В средах непрерывной интеграции (CI) переменная среды CI может быть установлена, что предотвратит показ запроса. Сбор телеметрии также можно отключить для отдельной команды, используя флаг --no-telemetry.

Примеры

cordova telemetry on
cordova telemetry off
cordova build --no-telemetry

Для получения более подробной информации ознакомьтесь с нашим уведомлением о конфиденциальности: https://cordova.apache.org/privacy

Команда cordova help

Синтаксис

Показать сводку синтаксиса или справку по определённой команде.

Синтаксис

cordova help [command]
cordova [command] -h
cordova -h [command]

Команда cordova config

Синтаксис

Установить, получить, удалить, изменить и перечислить глобальные опции cordova.

Синтаксис

cordova config ls
cordova config edit
cordova config set <key> <value>
cordova config get <key>
cordova config delete <key>

Примеры

cordova config set autosave false
cordova config set browserify false

© 2012, 2013, 2015 The Apache Software Foundation
Licensed under the Apache License 2.0.
https://cordova.apache.org/docs/en/8.x/reference/cordova-cli/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API