AGGIORNAMENTO 2014-09-19: Questa non è più la risposta più accurata. Dai un'occhiata ad alcune delle altre risposte di seguito. È stato accurato nel momento in cui ho risposto alla domanda, ma sembra che ci siano stati molti progressi in questo settore da allora.
Ho paura che tu non abbia fortuna. Grunt è costruito utilizzando il nodo e deve essere installato utilizzando npm. Potrebbe essere possibile copiare un'installazione esistente di Grunt da un'altra macchina se non si desidera utilizzare npm, ma continuerà a utilizzare l'eseguibile grunt
e tutte le sue dipendenze sul proprio server di build.
In aggiunta a ciò, molte delle attività di Grunt sono implementate come moduli Node.js e sarà necessario installarle. Ancora, potresti essere in grado di copiarli da un altro server, dove hai fatto l'installazione di Node.js/Grunt, ma a un certo punto, devi farlo.
Per eseguire Grunt da Maven, la soluzione migliore è utilizzare il plugin exec di Maven e quindi eseguire il file eseguibile di grunt da lì.
In alternativa, ci sono diversi plugin Maven che consentono di fare cose simili a Grunt in modo Java. Richiedono una configurazione aggiuntiva non compatibile con Grunt, quindi YMMV. Uno che ho usato in passato è http://code.google.com/p/wro4j/, che viene fornito con un plug-in Maven: http://code.google.com/p/wro4j/wiki/MavenPlugin
Qualsiasi motivo particolare per cui non è possibile installare Node.js sul server di build?
Questo plugin è fantastico! Citando il README: _Non intendeva sostituire la versione di sviluppo del Node - gli sviluppatori frontend installeranno ancora Node sui loro laptop, ma gli sviluppatori di backend possono eseguire una build pulita senza nemmeno installare Node sul loro computer_ – olivieradam666
Lo uso su più progetti ed è fantastico . Una cosa a cui prestare attenzione è scaricare il nodo per il sistema su cui viene eseguito, quindi se si dispone di un sistema operativo diverso sul server di generazione, è necessario assicurarsi che sia la versione che si è verificata nel controllo della versione, la tua versione locale (per me OSX) dovrà essere mantenuta locale per il tuo progetto. – am80l
Un'altra alternativa è quella di .gitignore della cartella "nodo" (dove finiscono gli eseguibili) in modo che ogni architettura diventi sua. –