Ce chapitre constitue un manuel de référence ; nul besoin de l’étudier intégralement, consultez-le uniquement lorsque vous en avez besoin.
Syntaxe de la CLI
cordova <commande> [options] -- [paramètres spécifiques à la plateforme]Langage du code : CSS (css)
Liste des commandes globales
Exécutables sans se placer dans le répertoire d’un projet Cordova
| Commande | Description |
|---|---|
| create | Créer un nouveau projet |
| help | Consulter la documentation d’aide d’une commande |
| config | Définir, interroger, supprimer, modifier ou lister les paramètres de configuration globaux de Cordova |
Liste des commandes de projet
À exécuter impérativement depuis le répertoire racine d’un projet Cordova valide
| Commande | Description |
|---|---|
| info | Afficher les informations d’environnement du projet |
| requirements | Vérifier et afficher toutes les dépendances nécessaires pour une plateforme cible |
| platform | Gérer les plateformes du projet (Android/iOS/Browser, etc.) |
| plugin | Gérer les plugins du projet |
| prepare | Copier les fichiers de ressources dans les dossiers de chaque plateforme, en préparation à la compilation |
| compile | Compiler le projet pour la plateforme indiquée |
| build | Générer l’application (équivaut à prepare + compile) |
| clean | Supprimer les fichiers temporaires générés lors de la compilation des plateformes |
| run | Lancer l’application (exécute en interne prepare + compile + déploiement et lancement) |
| serve | Lancer un serveur web local pour prévisualiser les ressources web (exécute prepare en arrière-plan) |
Options générales (prises en charge par toutes les commandes CLI)
| Paramètre | Description |
|---|---|
| -d / –verbose | Afficher des journaux détaillés. Si vous appelez cordova-cli depuis du code Node, écoutez les événements log et warn pour récupérer les logs : cordova.on('log', ()=>{}) |
| -v / –version | Afficher la version actuelle de la CLI Cordova |
| –nohooks | Empêcher l’exécution des scripts hook ; il est possible de filtrer les hooks via une expression régulière |
Présentation des paramètres spécifiques aux plateformes
Certaines commandes acceptent des paramètres personnalisés pour les plateformes (platformOpts).
Il faut utiliser -- comme séparateur : ce qui précède -- est interprété par la CLI Cordova, tous les paramètres situés après -- sont directement transmis aux outils de compilation natifs de la plateforme cible.
Exemples d’utilisation de la CLI
Démonstration d’un flux de travail complet :
- Créer un projet
- Installer le plugin caméra
- Ajouter la plateforme Android
- Compiler et lancer l’application sur Android
- Générer une version de production avec des paramètres de signature Android
# Créer le projet
cordova create myApp com.foxdevelop.myApp myApp
cd myApp
# Ajouter le plugin caméra
cordova plugin add cordova-plugin-camera
# Ajouter la plateforme Android
cordova platform add android
# Vérifier les dépendances de compilation pour Android
cordova requirements android
# Compiler pour Android (affichage des logs détaillés)
cordova build android --verbose
# Lancer l’application sur appareil ou émulateur
cordova run android
# Générer une version Release et transmettre les paramètres de signature
cordova build android --release -- --keystore="..\android.keystore" --storePassword=android --alias=mykeyLangage du code : PHP (php)
Description détaillée de chaque commande
cordova create
Créer la structure de répertoires d’un projet Cordova.
Syntaxe :
cordova create chemin [identifiantPaquet [nomApplication]] [options]Langage du code : CSS (css)
Paramètres
| Valeur | Description |
|---|---|
| path | Dossier du projet (le dossier ne doit pas exister au préalable, la CLI le crée automatiquement) |
| id | Identifiant de paquet, valeur par défaut : org.apache.cordova.hellocordovaFormat de nom de domaine inversé, correspond à l’identifiant widget de config.xml ; utilisé pour générer le nom du paquet Java, à définir judicieusement |
| name | Nom affiché de l’application, valeur par défaut : Hello CordovaCorrespond au champ name de config.xml, sert à créer le nom de classe du projet natif |
Options
--template: Créer un projet à partir d’un modèle personnalisé local, hébergé sur NPM ou GitHub
cordova create myapp com.mycompany.myteam.myapp MyAppLangage du code : CSS (css)
cordova platform
Gérer les plateformes : ajout, suppression, mise à jour, listage. L’ajout ou la suppression d’une plateforme modifie le dossier platforms du projet.
cordova {platform | platforms} [
add <description_plateforme> [...] {--save | link=<chemin> } |
{remove | rm} plateforme [...] {--save}|
{list | ls} |
update ]Langage du code : HTML, XML (xml)
Sous-commandes et paramètres
| Sous-commande | Paramètre | Description |
|---|---|---|
| add <description_plateforme> | Ajouter une plateforme | |
| –nosave | Ne pas enregistrer les informations de la plateforme dans config.xml / package.json après installation | |
| –link= | Créer un lien symbolique vers le code source local de la plateforme au lieu de copier les fichiers (utilisé pour le développement et le débogage de plateformes) | |
| remove <plateforme> | Supprimer une plateforme | |
| –nosave | Supprimer la plateforme, mais conserver les entrées dans config.xml / package.json | |
| update <plateforme> | Mettre à jour la version de la plateforme | |
| –save | Mettre à jour la version de plateforme enregistrée dans config.xml | |
| list / ls | Lister toutes les plateformes installées et disponibles |
Format de description de plateforme <platform-spec>
plateforme[@numéro_version] | chemin_local | adresseGit[#branche/tag/commit]Langage du code : PHP (php)
- platform : nom de la plateforme android / ios / browser / electron
- version : version sémantique semver, exemple
^13.0.0 - path : dossier source local de la plateforme ou archive tar
- url : adresse du dépôt Git
- commit-ish : branche, tag ou hash de commit cible ; par défaut master si omis
Plateformes prises en charge
android、browser、electron、ios
# Ajouter Android et iOS, et enregistrer dans les fichiers de configuration
cordova platform add android ios
# Ajouter la plateforme Android avec une version spécifique
cordova platform add android@^13.0.0
# Installer une plateforme depuis un dépôt Git à partir d’un tag
cordova platform add https://github.com/myfork/cordova-android.git#13.0.0
# Installer une plateforme depuis un dossier local
cordova platform add ../android
# Supprimer la plateforme Android
cordova platform rm android
# Afficher la liste des plateformes
cordova platform lsLangage du code : PHP (php)
cordova plugin
Gérer les plugins du projet
cordova {plugin | plugins} [
add <description_plugin> [..] {--searchpath=<dossier> | --noregistry | --link | --save | --force} |
{remove | rm} {<identifiantPlugin> | <nom>} --save |
{list | ls}
]Langage du code : HTML, XML (xml)
Paramètres des sous-commandes
| Sous-commande | Paramètre | Description |
|---|---|---|
| add <description_plugin> | Ajouter un plugin | |
| –searchpath <dossier> | Rechercher les plugins d’abord dans le dossier indiqué ; séparateur de chemins : ; sous Windows, : sous Linux/Mac | |
| –noregistry | Ne pas récupérer le plugin depuis le dépôt officiel npm | |
| –link | Créer un lien symbolique lors de l’installation depuis un dossier de plugin local (développement et débogage de plugins) | |
| –nosave | Ne pas écrire l’information dans config.xml / package.json | |
| –force | Forcer l’écrasement des fichiers en conflit (ajouté dans la version 6.1) | |
| remove | Supprimer un plugin | |
| –nosave | Supprimer le plugin mais conserver son entrée dans les fichiers de configuration | |
| list / ls | Lister les plugins installés |
Format de description de plugin <plugin-spec>
[@espaceNom/]identifiantPlugin[@version] | dossier_local | adresseGit[#commit][:sousDossier]Langage du code : PHP (php)
Ordre de priorité de résolution des plugins (du plus élevé au plus faible)
- Plugin et version explicitement indiqués sur la ligne de commande
- Informations de plugin enregistrées dans config.xml / package.json
- Dernière version compatible avec le projet disponible sur npm (dépendance Cordova déclarée dans le package.json du plugin)
- Dernière version du plugin sur npm
# Installer les plugins caméra et fichier, recherche prioritaire dans ../plugins
cordova plugin add cordova-plugin-camera cordova-plugin-file --searchpath ../plugins
# Installer une version spécifique
cordova plugin add cordova-plugin-camera@^2.0.0
# Installer un plugin depuis un dossier local
cordova plugin add ../cordova-plugin-camera
# Supprimer un plugin
cordova plugin rm cordova-plugin-camera
# Afficher la liste des plugins
cordova plugin lsLangage du code : PHP (php)
Présentation des conflits de plugins
Certains plugins modifient les fichiers de configuration natifs via la balise edit-config du fichier plugin.xml.
Lorsque plusieurs plugins tentent de modifier le même nœud XML, un conflit survient et la CLI bloque l’installation par défaut.
Solutions possibles :
- Modifier le fichier plugin.xml des plugins pour éviter de modifier le même nœud (recommandé)
- Utiliser
--forcepour imposer l’installation (⚠️ risque : écrase les modifications des autres plugins, ce qui peut entraîner leur dysfonctionnement)
cordova prepare
Synchroniser la configuration de config.xml dans les fichiers manifeste natifs de chaque plateforme ; copier les icônes, écrans de lancement et ressources des plugins afin que le projet soit prêt à être compilé par le SDK natif.
cordova prepare [noms_plateformes...]Langage du code : CSS (css)
Si aucune plateforme n’est indiquée, l’opération s’applique à toutes les plateformes.
cordova compile
Exécute uniquement la compilation, n’exécute pas prepare. On utilise généralement directement la commande build ; cette commande est surtout utile pour les extensions via hooks.
cordova compile [plateformes...]
[--debug | --release]
[--device | --emulator | --target=<nom>]
[--buildConfig=<fichier>]
[-- paramètres_plateforme]Langage du code : CSS (css)
cordova build
Équivaut à prepare + compile, permet de générer le paquet de l’application.
cordova build [plateformes...]
[--debug | --release]
[--device | --emulator]
[--buildConfig=<fichier_configuration>]
[-- paramètres_plateforme]Langage du code : CSS (css)
| Paramètre | Description |
|---|---|
| –debug | Générer un paquet de débogage |
| –release | Générer un paquet de production |
| –device | Compiler une version destinée à un appareil physique |
| –emulator | Compiler une version adaptée aux architectures d’émulateur |
| –buildConfig | Spécifier le fichier de configuration de compilation, fichier par défaut build.json à la racine du projet, fréquemment utilisé pour la configuration des signatures |
cordova build android --release --buildConfig=build.json
cordova build android --release -- --keystore="app.keystore" --alias=key0Langage du code : JavaScript (javascript)
cordova run
Enchaîne prepare → build → déploiement de l’application sur appareil physique ou émulateur, puis lancement.
cordova run [plateformes...]
[--list | --debug | --release]
[--noprepare]
[--nobuild]
[--device | --emulator | --target=<nom>]
[--buildConfig=<fichier>]
[-- paramètres_plateforme]Langage du code : CSS (css)
| Paramètre | Description |
|---|---|
| –list | Lister tous les appareils physiques et émulateurs disponibles |
| –noprepare | Ignorer l’étape prepare (version 6.2+) |
| –nobuild | Ignorer la compilation, déployer directement le paquet existant |
| –target | Désigner le nom d’un émulateur ou appareil, récupérable via --list |
Exemples :
# Lister les appareils
cordova run android --list
# Lancer sur un émulateur spécifique
cordova run android --target=Nexus_5_API_23_x86
# Ne pas recompiler, lancer directement
cordova run android --nobuildLangage du code : PHP (php)
cordova emulate
Alias de cordova run --emulator ; lance l’application exclusivement sur un émulateur.
cordova clean
Supprimer les fichiers temporaires générés lors de la compilation des différentes plateformes
cordova clean android
cordova requirements
Vérifier l’ensemble des dépendances nécessaires à une plateforme (JDK, Android SDK, Xcode, etc.)
cordova requirements android
Le code de sortie vaut 0 si toutes les dépendances sont satisfaites, une valeur différente de 0 en cas de dépendance manquante ; utilisé couramment pour valider les environnements de build automatisés.
cordova info
Afficher l’intégralité des informations sur l’environnement, les plateformes et les plugins ; indispensable pour envoyer un rapport de bug.
cordova info
cordova serve
Lancer un serveur web local pour prévisualiser les ressources du dossier www, port par défaut 8000
cordova serve 8080
# Adresse d’accès : http://127.0.0.1:8080/android/wwwLangage du code : PHP (php)
cordova help
Consulter l’aide d’une commande
cordova help build
cordova build -h
cordova config
Gérer la configuration globale de Cordova
cordova config ls # Lister tous les paramètres de configuration
cordova config set save-exact true
cordova config get save-exact
cordova config delete save-exact
cordova config editLangage du code : PHP (php)
Outil en ligne de commande Cordova (CLI) (manuel de référence)