java - serve - Grunt, Livereload con maven y servidor embarcadero
grunt watch folder (1)
Me pregunto si es posible usar grunt y livereload con mi aplicación web Java actual que está utilizando maven y jetty.
La forma en que funciona mi aplicación web Java actual es que ejecuto maven para construir la aplicación web y también crea un servidor jetty local con mi aplicación java ejecutándose en él. Me gustaría poder tener una carga en vivo usando el servidor de embarcadero, en lugar de tener que crear un nuevo servidor de host local donde esté buscando una página de index.html para cargar.
Gruntfile.js (solo un par de fragmentos de mi gruntfile.js)
var LIVERELOAD_PORT = 35729;
var lrSnippet = require(''connect-livereload'')({
port: LIVERELOAD_PORT
});
var mountFolder = function (connect, dir) {
return connect.static(require(''path'').resolve(dir));
};
connect: {
options: {
port: 9000,
hostname: ''*''
},
livereload: {
options: {
middleware: function (connect) {
return [lrSnippet, mountFolder(connect, ''src/main/webapp/'')];
}
}
}
},
open: {
server: {
path: ''http://localhost:<%= connect.options.port %>''
}
}
Puede usar esto: https://github.com/davidB/livereload-jvm
La forma en que lo hago es: crear una instancia servidor Jetty programáticamente y junto con ella crear un servidor LRS (la implementación anterior también busca cambios en una carpeta de su elección y cuando nota un cambio notifica al cliente / navegador). Para incluir el script de cliente livereload.js, dependo de mi framework para hacerlo (Apache Wicket), lo configuro para incluir el script en modo de desarrollo.
Estoy seguro de que puedes crear un pequeño plugin maven para esto, o incluso generar un nuevo jvm a través de maven (usando exec-maven-plugin por ejemplo http://mojo.codehaus.org/exec-maven-plugin/ ) con esto implementación de carga en vivo.