Domanda

sto usando il Maven-guerra plugin per filtrare alcune risorse in WEB-INF. Per lo più roba roba statico come:

var url = ${contextRoot}/save.json;

o

<link href="static/css/layout-${buildNumber}.css"/>

Tutto funziona fantasticamente. Il mio problema è che ha creato un incubo di sviluppo. Schiero tipicamente caldo per un gatto locale e le mie maniglie IDE copia di modifiche (su Salva) per la directory di destinazione. Ma quando ciò accade io alla fine con un carattere $ {} proprietà nel mio file invece di quello che è stato originariamente sostituito con dal plugin guerra. Io preferirei vista di prova / modifiche di risorse statiche on-the-fly, invece di dover ridistribuire per ogni modifica.

Ho rovinato in giro con il tomcat plugin per farlo funzionare, ma quando ho usato che il filtraggio delle risorse non avviene a meno che non lo uso per implementare, nel qual caso perdo le funzionalità hot-swap.

sto usando la primavera e sarei bene con l'utilizzo di temi, filtrando le proprietà a tema, e quindi utilizzando quella di sostituire i valori a mio avviso. Ma per quanto riguarda le altre cose js / css / static?

C'è un modo per avere la guerra plug-in "filtro on-the-fly"? Qualcuno può raccomandare un modo migliore realizzare quello che sto cercando di fare? Mi sento come se avessi stato a guardare per troppo tempo e hanno una certa visione a tunnel in materia.

È stato utile?

Soluzione 2

Alla fine ho mantenuto gli stessi metodi, ma ha cambiato il mio approccio per raggiungere questo obiettivo.

Per Javascript, ho messo tutto ciò che deve essere filtrata in un unico file Costanti:

// Constants.js

var BASE_URL = '${contextRoot}';

La ragione di questo è che il file Constants.js sarà molto raramente essere modificato ed evitare il problema di avere quel file riassegnare al volo.

Il mio altro esempio stava usando ${buildNumber} per evitare di risorse attraverso il caching del browser implementa. Ho scoperto che aggiungendo il numero di build in una query string ha funzionato altrettanto bene:

<link href="static/css/layout.css?${buildNumber}"/>

Altri suggerimenti

Se si utilizza Eclipse con M2E e M2E-WTP, è possibile ottenere il filtraggio risorsa web on-the-fly. Questo è spiegato qui: https: //community.jboss.org/en/tools/blog/2011/05/03/m2eclipse-wtp-0120-new-noteworthy

E ci demoed: http://bit.ly/wGcD4j

Si noti che, in questo video, il profilo Maven Utente di Gestione è venuta da JBoss Tools 3.3.0.Beta1 (http://docs.jboss.org/tools/whatsnew/maven/maven-news-3.3.0. Beta1.html)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top