Compilations

Les compilateurs créent ou modifient des ressources de l'espace de travail, généralement en fonction de l'existence et de l'état d'autres ressources. Il s'agit de puissants mécanismes qui permettent de mettre en oeuvre les contraintes de certaines domaines. Par exemple, un compilateur Java convertit des fichiers source Java (fichiers .java) en fichiers de classe exécutables (fichiers .class), un compilateur de liens Web met à jour les liens vers des fichiers dont le nom/emplacement a changé, etc. A mesure que des ressources sont créées et modifiées, des compilateurs sont exécutés et les contraintes sont préservées. Cette conversion n'a pas à s'effectuer sur le principe un à un. Par exemple, un fichier .java peut générer plusieurs fichiers .class. 

Compilation automatique et compilation manuelle

Il existe deux modes de compilations distincts : la compilation automatique et la compilation à l'initiative de l'utilisateur.

Les utilisateurs qui n'ont pas besoin de contrôler au plus près le déroulement des compilations peuvent tout simplement activer la compilation automatique. Dans ce mode, les compilations s'effectuent après chaque série de modifications de ressources (par exemple, sauvegarde d'un fichier, importation d'un ZIP, ...). La compilation automatique est efficace car la quantité de travail effectuée est proportionnelle à la quantité de modifications entrées.   La compilation automatique présente l'avantage d'avoir toujours des ressources dérivées (par exemple, les fichiers .class Java) à jour. L'option Effectuer une compilation automatique lorsqu'une ressource est modifiée de la page Fenêtre > Préférences > Plan de travail permet d'activer ou de désactiver la compilation automatique.

Les utilisateurs qui veulent contrôler de plus près les compilations peuvent désactiver la compilation automatique et lancer les compilations manuellement. Ce mode de fonctionnement est préférable lorsque, par exemple, vous savez pertinemment qu'une compilation n'a aucun intérêt tant que vous n'avez pas effectué un nombre suffisamment important de modifications. Dans ce cas, les frais de compilations automatiques prématurées sont superflus. Vous pouvez lancer des compilations manuelles de diverses manières, par exemple en sélectionnant Regénérer tout dans le menu contextuel d'un projet. 

La compilation manuelle présente l'inconvénient que les tâches générées pour signaler des erreurs de compilation se périment tandis que vous compilez. De plus, vous ne devez pas oublier d'effectuer une compilation manuelle avant de vous fier aux résultats de compilation (par exemple, avant d'exécuter le programme Java).

Compilations complète et incrémentielle

Il existe deux types de compilations : complète et incrémentielle. Une compilation incrémentielle utilise un état de compilation antérieur et applique les conversions des compilateurs configurés uniquement aux ressources modifiées depuis le traitement du dernier état de compilation (c-à-d, depuis la dernière compilation). Pour plus d'efficacité, la compilation automatique est incrémentielle.

Une compilation complète (également appelée recompilation) supprime tout état de compilation existant et convertit toutes les ressources requises en fonction des règles de domaine des compilateurs configurés. La première compilation incrémentielle équivaut à une compilation complète car il n'existe aucun état de compilation antérieur sur lequel se baser.

En fonction des besoins de l'utilisateur, des compilations complètes et incrémentielles peuvent être effectuées pour une série déterminée de projets ou pour l'espace de travail dans son intégralité. Vous ne pouvez pas compiler des fichiers ou des dossiers spécifiques.

 
Copyright IBM Corporation and others 2000, 2003