El archivo de configuración build.gradle es el siguiente:
//aplicamos el plugin java sobre las fuentes para que compile las clases apply plugin: 'java' //aplicamos el plugin war para que todo lo que esté dentro de src/main/webapp lo copie dentro del war apply plugin: 'war' //le indicamos a gradle que genere nuestro artefacto con esta versión version = '1.1.0' //indicamos los repositorios de binarios que gradle descargará e incluirá en el classpath de compilación. repositories { mavenCentral() } //incluimos las dependencias de nuestra aplicación dependencies { //indicamos una dependencia de compilación, si la dependencia es de compilación //entonces además de incluirla en el classpath de compilación también será incluída //en el classpath de ejecución(como dependencia en el directorio lib) compile group: 'org.aspectj', name: 'aspectjweaver', version: '1.6.2' compile group: 'org.springframework', name: 'spring-aop', version: '3.2.3.RELEASE' compile group: 'org.springframework', name: 'spring-context', version: '3.2.3.RELEASE' compile group: 'org.springframework', name: 'spring-context-support', version: '3.2.3.RELEASE' compile group: 'org.springframework', name: 'spring-core', version: '3.2.3.RELEASE' compile group: 'org.springframework', name: 'spring-web', version: '3.2.3.RELEASE' compile group: 'org.springframework', name: 'spring-webmvc', version: '3.2.3.RELEASE' compile group: 'org.springframework', name: 'spring-beans', version: '3.2.3.RELEASE' compile group: 'org.springframework', name: 'spring-jdbc', version: '3.2.3.RELEASE' compile group: 'commons-collections', name: 'commons-collections', version: '3.2' //a diferencia del anterior esta dependencia solo servirá para compilar //se entiende que en tiempo de ejecución será proveída por el servidor o contenedor de aplicaciones providedCompile group: 'javax.servlet', name:'javax.servlet-api', version: '3.1.0' //a diferencia de los 2 tipos de dependencias anteriores, esta dependencia solo será incluída //en la fase de testing. testCompile group: 'junit', name: 'junit', version: '4.+' } //creamos una tarea que copiará los artefactos generados a una determinada ruta en nuestro filesystem task copiarGeneradosAServer{ doLast{ copy { from 'build/libs' into 'D:/Projects/4.Install/1.Servers/3.Weblogic/wls12130/user_projects/domains/naboo/autodeploy' include '*.war' } } }
El comando para ejecutar el empaquetamiento y su resultado es el siguiente:
J:\proyectos\testing>gradle clean build copiarGeneradosAServer :clean :compileJava :processResources UP-TO-DATE :classes :war :assemble :compileTestJava UP-TO-DATE :processTestResources :testClasses :test UP-TO-DATE :check UP-TO-DATE :build :copiarGeneradosAServer BUILD SUCCESSFUL Total time: 7.204 secs J:\temporal\testing\testing>
el proyecto completo te lo puedes bajar desde esta rama en github