Utilisation des générateurs, des exécuteurs et débogueurs dans l'environnement de développement intégré (IDE) AWS Cloud9 - AWS Cloud9

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation des générateurs, des exécuteurs et débogueurs dans l'environnement de développement intégré (IDE) AWS Cloud9

Un générateur indique à l'IDE AWS Cloud9 comment générer les fichiers d'un projet. Un exécuteur indique à l'IDE AWS Cloud9 comment exécuter les fichiers d'un type spécifique. Un exécuteur peut utiliser un débogueur pour rechercher des problèmes dans le code source des fichiers.

Vous pouvez utiliser l'IDE AWS Cloud9 pour générer, exécuter et déboguer votre code des manières suivantes :

Prise en charge intégrée de la génération, de l'exécution et du débogage

L'IDE AWS Cloud9 intègre la prise en charge de la génération, de l'exécution et du débogage de code pour plusieurs langages. Pour obtenir la liste complète, consultez Prise en charge des langages.

La prise en charge intégrée de la génération est disponible dans la barre de menus avec les commandes de menu Exécuter, Système de génération et Exécuter, Générer. Pour ajouter la prise en charge d'un outil ou d'un langage de programmation qui n'est pas répertorié, consultez Création d'un générateur ou d'un exécuteur.

La prise en charge intégrée de l'exécution est disponible avec le bouton Exécuter et dans la barre de menus avec les commandes de menu Exécuter, Exécuter avec et Exécuter, Configuration d'exécution. Pour ajouter la prise en charge d'un outil ou d'un langage de programmation qui n'est pas répertorié, consultez Création d'un générateur ou d'un exécuteur et Création d'une configuration d'exécution.

La prise en charge intégrée du débogage est disponible dans la fenêtre Débogueur. Pour afficher la fenêtre Débogueur, cliquez sur le bouton Débogueur. Si le bouton Débogueur ne s'affiche pas, choisissez Fenêtre, Débogueur dans la barre de menus.

Génération des fichiers de votre projet

  1. Ouvrez un fichier correspondant au code à générer.

  2. Dans la barre de menus, choisissez Exécuter, Système de génération, puis le nom du générateur à utiliser, s'il n'est pas déjà choisi. Si le générateur que vous souhaitez utiliser n'est pas répertorié, arrêtez cette procédure, suivez les étapes de la section Création d'un générateur ou d'un exécuteur, puis revenez à cette procédure.

  3. Choisissez Exécuter, Générer.

Exécution de votre code

  1. Ouvrez un fichier correspondant au code à exécuter, si le fichier n'est pas déjà ouvert et sélectionné.

  2. Dans la barre de menus, choisissez l'un des éléments suivants :

    • Pour exécuter le code avec l'exécuteur intégré le plus adapté possible, choisissez Exécuter, Exécuter. Si AWS Cloud9 est introuvable, cette commande est désactivée.

    • Pour exécuter le code avec la dernière configuration d'exécution utilisée par AWS Cloud9, choisissez Exécuter, Dernière exécution.

    • Pour exécuter le code avec un exécuteur spécifique, choisissez Exécuter, Exécuter avec, puis choisissez le nom de l'exécuteur. Si l'exécuteur que vous souhaitez utiliser n'est pas répertorié, arrêtez cette procédure, suivez les étapes de la section Création d'un générateur ou d'un exécuteur, puis revenez à cette procédure.

    • Pour exécuter le code avec un exécuteur spécifique et avec une combinaison personnalisée de nom de fichier, d'options de ligne de commande, de mode débogage, de répertoire de travail actuel et de variables d'environnement, choisissez Exécuter, Configuration de l'exécution, puis choisissez le nom de la configuration d'exécution. Dans l'onglet de configuration d'exécution qui s'affiche, choisissez Exécuteur : Auto, l'exécuteur à utiliser, puis Exécuter. Si l'exécuteur que vous souhaitez utiliser n'est pas répertorié, arrêtez cette procédure, suivez les étapes de la section Création d'un générateur ou d'un exécuteur, puis revenez à cette procédure.

Débogage de votre code

  1. Dans l'onglet de configuration de l'exécution de votre code, choisissez Exécuter en mode de débogage. L'icône de bogue devient verte sur un fond blanc. Pour plus d'informations, consultez Exécution de votre code et Création d'une configuration d'exécution.

  2. Dans votre code, définissez des points d'arrêt dans le code pour indiquer où vous souhaitez suspendre l'exécution, comme suit :

    1. Ouvrez chaque fichier dans lequel vous voulez définir un point d'arrêt.

    2. À chaque emplacement dans un fichier où vous souhaitez définir un point d'arrêt, choisissez la zone vide dans la marge à gauche du numéro de ligne. Un cercle rouge s'affiche.

      Pour supprimer un point d'arrêt, choisissez le point d'arrêt dans la marge.

      Pour désactiver un point d'arrêt au lieu de le supprimer, dans la fenêtre Débogueur, dans Points d'arrêt, désélectionnez la case à cocher correspondant à désactiver. Pour réactiver le point d'arrêt, cochez sa case.

      Pour désactiver tous les points d'arrêt, dans la fenêtre Débogueur, choisissez Désactiver tous les points d'arrêt. Pour réactiver tous les points d'arrêt, choisissez Activer tous les points d'arrêt.

      Si la fenêtre Débogueur n'est pas visible, choisissez le bouton Débogueur. Si le bouton Débogueur n'est pas visible, dans la barre de menus, choisissez Fenêtre, Débogueur.

  3. Définissez les expressions à évaluer pour lesquelles vous souhaitez obtenir la valeur au point où une exécution s'arrête, comme suit :

    1. Dans la fenêtre Débogueur, dans Expression à évaluer, choisissez Saisir une expression ici.

    2. Saisissez l'expression à évaluer, puis appuyez sur Enter.

      Pour modifier une expression à évaluer, cliquez dessus avec le bouton droit de la souris, puis choisissez Modifier l'expression à évaluer. Saisissez la modification, puis appuyez sur Enter.

      Pour supprimer une expression à évaluer existante, cliquez dessus avec le bouton droit de la souris, puis choisissez Retirer l'expression à évaluer.

  4. Exécutez votre code comme décrit dans Exécution de votre code.

Lorsqu'une exécution est suspendue, vous pouvez également suspendre le pointeur sur n'importe quelle partie de code affichée (par exemple, une variable) pour afficher toutes les informations disponibles la concernant dans une infobulle.

Modification d'un exécuteur intégré

  1. Dans la barre de menus, choisissez Exécuter, Exécuter avec, puis l'exécuteur intégré à modifier.

  2. Pour que l'exécuteur ne tente pas d'exécuter votre code, choisissez Arrêter dans l'onglet de configuration d'exécution qui s'affiche.

  3. Choisissez Exécuteur : mon exécuteur, où Mon exécuteur est le nom de l'exécuteur à modifier, puis choisissez Modifier l'exécuteur.

  4. Sous l'onglet Mon Runner.run qui s'affiche, modifiez la définition actuelle de l'exécuteur. Consultez Définition d'générateur ou d'un exécuteur.

  5. Choisissez Fichier, Enregistrer sous). Enregistrez le fichier portant le même nom (Mon Runner.run) dans le répertoire my-environment/.c9/runners, où my-environment est le nom de votre environnement de développement AWS Cloud9.

Note

Toutes les modifications que vous apportez à un exécuteur intégré s'appliquent uniquement à l'environnement dans lequel vous effectuez ces modifications. Pour appliquer vos modifications à un autre environnement, ouvrez cet environnement, puis suivez les étapes précédentes pour ouvrir, modifier et enregistrer ces mêmes modifications dans cet exécuteur intégré.

Création d'une configuration d'exécution

Dans la barre de menus, choisissez Exécuter, Configuration d'exécution, Nouvelle configuration de l'exécution. Dans l'onglet de configuration d'exécution qui s'affiche, effectuez les opérations suivantes :

  1. Dans la zone en regard de Exécuter et Redémarrer, saisissez le nom qui s'affiche dans le menu Exécuter, Configurations d'exécution pour cette configuration d'exécution.

  2. Dans la zone Commande, saisissez les options de ligne de commande personnalisées que vous souhaitez utiliser.

  3. Pour que cette configuration d'exécution utilise les paramètres de débogage prédéfinis de l'exécuteur, choisissez Exécuter en mode de débogage. L'icône de bogue devient verte sur un fond blanc.

  4. Pour que cette configuration d'exécution utilise un répertoire de travail spécifique, choisissez CWD, le répertoire à utiliser, puis Séelctionner.

  5. Pour que cette configuration d'exécution utilise des variables d'environnement spécifiques, choisissez ENV, puis saisissez le nom et la valeur de chaque variable d'environnement.

Pour utiliser cette configuration d'exécution, ouvrez le fichier qui correspond au code à exécuter. Choisissez Exécuter, Configuration d'exécution dans la barre de menus, puis le nom de la configuration d'exécution. Dans l'onglet de configuration d'exécution qui s'affiche, choisissez Exécuteur : Auto, l'exécuteur à utiliser, puis Exécuter.

Note

Toute configuration d'exécution que vous créez s'applique uniquement à l'environnement dans lequel vous avez créé la configuration d'exécution. Pour ajouter cette configuration d'exécution à un environnement séparé, ouvrez l'autre environnement, puis suivez les étapes précédentes pour créer la même configuration d'exécution dans cet environnement.

Création d'un générateur ou d'un exécuteur

  1. Pour créer un générateur, choisissez Exécuter, Système de génération, Nouveau système de génération dans la barre de menus. Pour créer un exécuteur, choisissez Exécuter, Exécuter avec, Nouvel exécuteur dans la barre de menus.

  2. Dans l'onglet du générateur (appelé Mon Builder.build) ou l'onglet de l'exécuteur (appelé Mon Runner.run) qui s'affiche, définissez le générateur ou l'exécuteur. Consultez Définition d'un générateur ou d'un exécuteur.

  3. Après avoir défini le générateur ou l'exécuteur, choisissez Fichier, Enregistrer sous. Pour un générateur, enregistrez le fichier avec l'extension .build dans le répertoire my-environment/.c9/builders, où my-environment est le nom de votre environnement. Pour un exécuteur, enregistrez le fichier avec l'extension de fichier .run dans le répertoire my-environment/.c9/runners, où my-environment est le nom de votre environnement. Le nom de fichier que vous spécifiez est le nom qui s'affiche dans le menu Exécuter, Système de génération (pour un générateur) ou le menu Exécuter, Exécuter avec (pour un exécuteur). Par conséquent, sauf si vous spécifiez un nom de fichier différent, le nom d'affichage par défaut est Mon générateur (pour un générateur) ou Mon exécuteur (pour un exécuteur).

Pour utiliser ce générateur ou cet exécuteur, consultez Génération des fichiers de votre projet ou Exécution de votre code.

Note

Un générateur ou un exécuteur que vous créez s'applique uniquement à l'environnement que vous avez créé dans ce générateur ou cet exécuteur. Pour ajouter ce générateur ou exécuteur à un autre environnement, ouvrez cet environnement, puis suivez les étapes précédentes pour créer le même générateur ou exécuteur dans cet environnement.

Définition d'un générateur ou d'un exécuteur

Cette procédure suppose que vous avez déjà commencé à créer un générateur ou un exécuteur en choisissant Exécuter, Système de génération, Nouveau système de génération (pour un générateur) ou Exécuter, Exécuter avec, Nouvel exécuteur (pour un exécuteur).

Sur l'onglet de générateur ou d'exécuteur qui s'affiche, utilisez JSON pour définir le générateur ou l'exécuteur. Commencez par utiliser le code suivant en tant que modèle.

Pour un générateur, commencez avec ce code.

{ "cmd": [], "info": "", "env": {}, "selector": "" }

Pour un exécuteur, commencez avec ce code.

{ "cmd": [], "script": "", "working_dir": "", "info": "", "env": {}, "selector": "", "debugger": "", "debugport": "" }

Dans le code précédent :

  • cmd : représente la liste des chaînes séparées par une virgule qu'AWS Cloud9 doit exécuter dans une seule commande.

    Lorsque AWS Cloud9 exécute cette commande, chaque chaîne de la liste est séparée par un seul espace. Par exemple, AWS Cloud9 exécute "cmd": [ "ls", "$file", "$args"] en tant que ls $file $args, où AWS Cloud9 remplace $file par le chemin d'accès complet au fichier actuel et $args avec tous les arguments saisis après le nom de fichier. Pour plus d'informations, consultez la liste des variables prises en charge plus loin dans cette section.

  • script : représente un script bash (qui peut être également spécifié en tant que tableau de lignes selon les besoins de lisibilité) que l'exécuteur exécute dans le terminal.

  • working_dir : représente le répertoire à partir duquel l'exécuteur s'exécute.

  • info : représente n'importe quelle chaîne de texte que vous souhaitez afficher à l'utilisateur au début de l'exécution. Cette chaîne peut contenir des variables, par exemple Running $project_path$file_name..., où AWS Cloud9 remplace $project_path par le chemin de répertoire du fichier actuel, et $file_name par la partie de nom du fichier actuel. Consultez la liste des variables prises en charge plus loin dans cette section.

  • env : représente un tableau d'arguments de ligne de commande que AWS Cloud9 doit utiliser, par exemple :

    "env": { "LANG": "en_US.UTF-8", "SHLVL": "1" }
  • selector : représente une expression régulière que vous voulez que AWS Cloud9 utilise pour identifier les noms de fichiers qui s'appliquent à cet exécuteur. Par exemple, vous pouvez spécifier source.py pour les fichiers Python.

  • debugger : représente le nom d'un débogueur disponible que vous voulez que AWS Cloud9 utilise et qui est compatible avec cet exécuteur. Par exemple, vous pouvez spécifier v8 pour le débogueur V8.

  • debugport : représente le numéro de port que vous voulez que AWS Cloud9 utilise pendant le débogage. Par exemple, vous pouvez spécifier 15454 pour le numéro de port à utiliser.

Le tableau suivant répertorie les variables que vous pouvez utiliser.

Variable Description

$file_path

Répertoire du fichier actuel, par exemple, /home/ec2-user/environment ou /home/ubuntu/environment.

$file

Chemin complet du fichier actuel, par exemple, /home/ec2-user/environment/hello.py ou /home/ubuntu/environment/hello.py.

$args

Tous les arguments saisis après le nom de fichier, par exemple, "5" "9".

$file_name

Partie nom du fichier actuel, par exemple, hello.py.

$file_extension

Extension du fichier actuel, par exemple, py.

$file_base_name

Nom du fichier actuel sans l'extension de fichier, par exemple, hello.

$packages

Chemin complet du dossier de packages.

$project

Chemin complet du dossier de projet actuel.

$project_path

Répertoire du fichier de projet actuel, par exemple, /home/ec2-user/environment/ ou /home/ubuntu/environment/.

$project_name

Nom de fichier du projet actuel sans l'extension de fichier, par exemple, my-demo-environment.

$project_extension

Extension de fichier du projet actuel.

$project_base_name

Nom de fichier du projet actuel sans l'extension.

$hostname

Nom d'hôte de l'environnement, par exemple, 192.0.2.0.

$hostname_path

Nom d'hôte de l'environnement avec le chemin relatif du fichier du projet, par exemple, https://192.0.2.0/hello.js.

$url

URL complète pour accéder à l'environnement, par exemple, https://192.0.2.0..

$port

Port affecté à l'environnement, par exemple, 8080.

$ip

Adresse IP pour exécuter un processus sur l'environnement, par exemple, 0.0.0.0.

Par exemple, le fichier de générateur suivant appelé G++.build définit un générateur pour GCC qui exécute la commande g++ avec l'option -o pour compiler le fichier actuel (par exemple, hello.cpp) dans un module d'objet. Ensuite, il associe le module d'objet dans un programme portant le même nom que le fichier actuel (par exemple, hello). Ici, la commande équivalente est g++ -o hello hello.cpp.

{ "cmd": [ "g++", "-o", "$file_base_name", "$file_name" ], "info": "Compiling $file_name and linking to $file_base_name...", "selector": "source.cpp" }

Autre exemple : le fichier d'exécuteur suivant appelé Python.run définit un exécuteur qui utilise Python pour exécuter le fichier actuel avec tous les arguments qui ont été fournis. Par exemple, si le fichier actuel s'appelle hello.py et que les arguments 5 et 9 ont été fournis, la commande équivalente est python hello.py 5 9.

{ "cmd": [ "python", "$file_name", "$args" ], "info": "Running $file_name...", "selector": "source.py" }

Enfin, le fichier d'exécuteur suivant appelé Print Run Variables.run définit un exécuteur qui produit simplement la valeur de chaque variable disponible, puis s'arrête.

{ "info": "file_path = $file_path, file = $file, args = $args, file_name = $file_name, file_extension = $file_extension, file_base_name = $file_base_name, packages = $packages, project = $project, project_path = $project_path, project_name = $project_name, project_extension = $project_extension, project_base_name = $project_base_name, hostname = $hostname, hostname_path = $hostname_path, url = $url, port = $port, ip = $ip" }