I generatori creano o modificano risorse dell'area di lavoro, servendosi solitamente di altre risorse. Si tratta di potenti meccanismi che consentono di rafforzare i vincoli di alcuni domini. Ad esempio, un generatore Java converte file di origine Java (file .Java) in file class eseguibili (file .clas), un generatore di collegamenti Web aggiorna i collegamenti a file i cui nomi o le cui posizioni vengono modificate e così via. Non appena viene creata o modificata una risorsa, viene eseguito un generatore che consente di mantenere i vincoli. Non è necessario eseguire questa trasformazione uno-a-uno. Ad esempio, un singolo file .java può generare diversi file .class.
Esistono due diversi modi di operare rispetto alla creazione: in build automatica o con build manuale iniziata dall'utente.
Gli utenti che non necessitano di un controllo dettagliato sull'esecuzione delle build possono attivare la build automatica. Con questa opzione attivata, le build vengono eseguite dopo ogni serie di modifiche alle risorse (ad esempio, dopo il salvataggio di un file, l'importazione di uno zip e così via). La build automatica è efficiente poiché la quantità di lavoro effettuata è proporzionale alla quantità di modifiche eseguite. I vantaggi della build automatica consistono nel disporre sempre dell'aggiornamento delle risorse derivate (ad esempio, file .class Java). La funzione di build automatica viene attivata/disattivata attraverso l'opzione Esegui automaticamente build alla modifica delle risorse sulla pagina Finestra > Preferenze > Workbench.
Gli utenti che necessitano di un maggior controllo possono disattivare la build automatica ed eseguire manualmente le build. Ciò può essere necessario quando la build non ha valore fino al completamento di un'ampia serie di modifiche. In questo caso, non è vantaggioso eseguire la funzione di build automatica. La funzione di build può essere richiamata manualmente i vari modi, ad esempio, selezionando Ricrea tutto dal menu di scelta rapida di un progetto.
Lo svantaggio della build manuale consiste nel fatto che le attività generate per indicare gli errori di build diventano rapidamente obsolete. Inoltre, è importante ricordare di eseguire la build manuale prima dell'output di build (ad esempio, prima di eseguire il programma Java).
Esistono due tipi di build: completa e incrementale. Una build incrementale utilizza un precedente stato di build e applica le trasformazioni dei generatori configurati solo alle risorse modificate rispetto allo stato precedente specificato (ad esempio, l'ultima build). La build automatica utilizza la build incrementale per garantire efficacia.
Una build completa (rigenerazione) elimina qualsiasi condizione preesistente e trasforma tutte le risorse necessarie in base alle regole di dominio dei generatori configurati. La prima build incrementale corrisponde a una build completa in quanto non esiste alcuna condizione precedente su cui operare.
In base alle necessità dell'utente, le build complete e incrementali possono essere eseguite su una serie specifica di progetti o sull'intera area di lavoro. Non è possibile eseguire la build di file o cartelle.