Les générateurs créent de nouvelles ressources à partir de ressources de l'espace de travail ou mettent à jour des ressources existantes.
Par exemple, un générateur Java convertit des fichiers source Java (fichiers .java) en fichiers de classe exécutables (fichiers .class). Cette conversion n'est pas obligatoirement sur la base un à un (un fichier .java peut générer plusieurs fichiers .class).
Les générateurs sont d'ordinaire utilisés pour la mise en application des contraintes d'un domaine. Par exemple, un générateur de liens Web peut mettre à jour des liens à des fichiers lorsque leur nom ou leur emplacement change.
Cette section présente les types de compilations possibles et la façon dont elles sont exécutées.