Spec-Zone.ru › Cordova 9

Справочник по командной строке 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, большая часть вашего кода и ресурсов будет находиться здесь. Они будут скопированы при каждой сборке на www директории каждой платформы. Директория www исходного кода воспроизводится в каждой поддиректории платформы, например, в platforms/ios/www или platforms/android/assets/www. Поскольку CLI постоянно копирует файлы из исходной папки www, вы должны редактировать только эти файлы, а не файлы, находящиеся в поддиректориях платформ. Если вы используете систему управления версиями, вы должны добавить эту исходную папку www, а также папку merges в систему управления версиями.

platforms/

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

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

plugins/

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

hooks/

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

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

merges/

Платформенно-специфичные веб-активы (файлы HTML, CSS и JavaScript) содержатся в соответствующих подпапках в этом каталоге. Они развертываются во время сборки в соответствующие каталоги родной платформы. Файлы, размещенные в 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 с указанным ID и именем приложения:

    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 Путь к каталогу или файлу tarball содержащему платформу
url URL к репозиторию git или файлу tarball содержащему платформу
commit-ish Ссылка на коммит/тег/ветвь. Если не указано, используется 'master'

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

  • Android
  • iOS
  • Windows (8.1, Phone 8.1, UWP – Windows 10)
  • Браузер
  • Electron

Примеры

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

Спецификация плагина

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

<plugin-spec> : [@scope/]pluginID[@version]|directory|url[#commit-ish][:subdir]
Значение Описание
scope Область опубликованного плагина, как определённого npm пакета
plugin Идентификатор плагина (ID плагина в 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 (т.е. если плагин был ранее добавлен без --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> [..]]

Опции

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

Команда cordova compile

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

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

Синтаксис

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

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

Команда cordova build

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

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

Синтаксис

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

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

Spec-Zone.ru

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