2011-08-31 14 views
6

Per un'applicazione GWT, che costruisco con il GWT Maven Plugin (GWT-maven-plugin), posso eseguire l'ambiente GWT di sviluppo conCome posso eseguire un'app GWT da gwt-maven-plugin senza plug-in del browser?

mvn compilare la guerra: è esploso GWT: run

e poi lanciare un browser. Ciò richiede che il browser fornisca il plugin per sviluppatori GWT. (Firefox 6 ad esempio non supporta ancora il plugin GWT).

Il plug-in Maven GWT consente anche di eseguire semplicemente il contenitore Jetty incluso con l'applicazione GWT, senza una modalità di sviluppo?

risposta

8

Dopo aver configurato il plugin gwt-maven, è sufficiente eseguire quanto segue.

mvn jetty:run-war

Dopo la compilazione GWT la guerra risultante sarà messo in banchina e ha iniziato con Maven Jetty Plugin.

+2

Il tuo 'pom.xml' avrà bisogno di una dipendenza dal plugin Jetty. Per Java 6, questo potrebbe essere qualcosa del tipo ' org.mortbay.jetty molo-maven-plugin 8.1.10.v20130312'. – Hbf

+0

@Hbf ha ragione sul pom: credo che l'ultima dichiarazione sui plugin (con tag corretti come per la versione) sia su http://www.eclipse.org/jetty/documentation/current/jetty-maven-plugin.html#running -assemblato-webapp-as-war – cellepo

+0

Potrebbe anche essere necessario seguire questo e aggiungere al tuo .m2/settings.xml (se sul jetty in esecuzione, si ottiene [ERRORE] Nessun plugin trovato per il prefisso 'jetty' nel progetto corrente e nei gruppi di plug-in): http://stackoverflow.com/a/27744248/1357094 – cellepo

1

L'unico modo per eseguire il progetto senza plug-in è compilarlo ed eseguirlo su un server. Se stai usando Netbeans, premi hit run. L'IDE compilerà e distribuirà il progetto su un server. In altro modo basta compilarlo con il seguente comando (è possibile omettere i test e rapporti):

mvn clean:clean resources:resources compiler:compile war:exploded resources:testResources compiler:testCompile surefire:test gwt:compile war:war 

Dopo questo si 've got pronti per la distribuzione di file di guerra. Per distribuire al Glassfish ora ci sono fondamentalmente tre opzioni:

Maven GlassFish Plugin

Una prima opzione sarebbe quella di utilizzare il Maven GlassFish Plugin. Questo plugin consente di interagire con un'installazione GlassFish locale o remota e la gestione dei domini Glassfish e delle implementazioni dei componenti all'interno del ciclo di vita di build di Maven.

Maven embedded GlassFish Plugin

La seconda opzione sarebbe quella di utilizzare il Maven Embedded Glassfish Plugin. Come indicato dal suo nome, questo plugin non si basa su un'installazione esistente ma utilizza un GlassFish incorporato, che gira nella stessa JVM del plug-in. Questo plugin è estremamente utile se vuoi mantenere la tua build portatile (chiunque può ottenere il tuo POM ed eseguire una build che coinvolge GlassFish senza averlo installato) con quasi le stesse funzionalità di una normale installazione GlassFish, eccetto il clustering ovviamente (puoi usare un domain.xml preconfigurato se lo desideri). Vedere Testing with the GlassFish Maven plugin and JavaDB Embedded per un esempio.

Maven Cargo plugin

Il lavoro iniziato da kohsuke Kawagushi come definitivamente integrata nel Carico e, iniziando con Cargo 1.0.1, GlassFish 3.x è ora supportata. Utilizzando il Maven Cargo plugin è quindi una terza opzione. Questo sarebbe interessante per le build che vogliono interagire con i contenitori in modo agnostico. Ma non sono sicuro che Cargo permetta tutta la flessibilità dei plug-in specifici GlassFish (ad esempio l'implementazione di risorse JMS, ecc.).

Problemi correlati