2016-11-28 3 views
0

Le fichier généré de mon dsl est constitué de toutes les ressources du projet. J'ai fait ce générateur charge toutes les ressources et le fichier est fait avec succès.XText Disable Full Build

La vitesse de cette opération est bien mais il y a des moments alors qu'il n'est pas complètement. Lorsque la génération complète ou la récupération est déclenchée, XtextBuilder itère toutes les ressources et exécute le générateur pour chacune d'entre elles. Dans mon DSL, cela provoque exactement le même fichier à générer 300 fois (c'est combien de ressources j'ai). Comment désactiver ces types de génération de fichier?

Répondre

1

Vous devriez résoudre ceci différemment. une option pourrait être d'enregistrer un org.eclipse.xtext.builder.IXtextBuilderParticipant personnalisé et y mettre votre logique de génération complète. (Alternativement un regard sur les impl par défaut org.eclipse.xtext.builder.BuilderParticipant)

override bindIXtextBuilderParticipant() { 
    MyBuilderParticipant 
} 

dans votre logique, vous appelez le générateur pour la première delta, et non pour tous les fichiers modifiés

+0

Pourriez-vous me donner la pointe de la façon de passer outre IXTextBuilderParticipant ? XTextBuilder a le domaine RegistryBuilderParticipant mais quand j'essaye de lier cette classe dans RuntimeModule, j'obtiens Guide erreur de création – user3009344

+1

a mis à jour ma réponse - et il est module d'ui –

+0

Cela fonctionne très bien, même si je colle plusieurs respositories qu'il construit juste une fois. Merci pour votre aide, vous m'avez sauvé beaucoup de temps. – user3009344