buildscript { repositories { mavenCentral() jcenter() } dependencies { classpath 'com.eriwen:gradle-css-plugin:1.11.1' classpath 'com.eriwen:gradle-js-plugin:1.12.1' classpath 'com.bmuschko:gradle-tomcat-plugin:2.2.+' classpath 'com.tkruse.gradle:gradle-groovysh-plugin:1.0.7' } } plugins { id "com.eriwen.gradle.js" version "1.12.1" } subprojects { apply plugin: 'java' repositories { mavenCentral() } } apply plugin: 'war' apply plugin: 'css' apply plugin: 'com.bmuschko.tomcat' apply plugin: 'com.eriwen.gradle.js' apply plugin: 'com.eriwen.gradle.css' apply plugin: 'com.github.tkruse.groovysh' ////ext.environment = hasProperty('env') ? env : 'dev' //environments { // dev { // // } // prod { // // } //} repositories { mavenCentral() } def core = project(':deps:com.juick') def server = project(':deps:com.juick.server') def xmpp = project(':deps:com.juick.xmpp') def json = project(':deps:com.juick.json') project(':deps:com.juick.server') { dependencies { compile core } } project(':deps:com.juick.xmpp') { dependencies { compile core } } project(':deps:com.juick.json') { dependencies { compile core } } dependencies { compile core compile server compile xmpp compile json compile 'org.slf4j:slf4j-jdk14:1.7.13' compile 'com.ganyo:gcm-server:1.0.+' compile 'com.notnoop.apns:apns:1.0.0.Beta6' compile 'com.github.scribejava:scribejava-apis:2.0.1' compile 'org.apache.httpcomponents:httpclient:4.5.1' compile 'org.json:json:20151123' compile "org.springframework:spring-jdbc:4.2.4.RELEASE" compile 'org.rythmengine:rythm-engine:1.0.1' providedCompile 'javax.servlet:javax.servlet-api:3.1.0' runtime 'mysql:mysql-connector-java:5.1.37' def tomcatVersion = '7.0.+' tomcat "org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}", "org.apache.tomcat.embed:tomcat-embed-logging-juli:${tomcatVersion}", "org.apache.tomcat.embed:tomcat-embed-jasper:${tomcatVersion}" } javascript.source { juick { js { srcDir "src/main/webapp" include "*.js" } } textext { js { srcDir "src/main/webapp/textext" include "*.js" } } } combineJs { source = javascript.source.juick.js.files + javascript.source.textext.js.files dest = file("${buildDir}/scripts.all.js") } minifyJs { source = combineJs dest = file("${buildDir}/scripts.min.js") sourceMap = file("${buildDir}/scripts.sourcemap.json") println("webAppDirName=${webAppDir} - ${webAppDirName}") } css.source { juick { css { srcDir "src/main/webapp" include "*.css" } } textext { css { srcDir "src/main/webapp/textext" include "*.css" } } } combineCss { source = css.source.juick.css.files + css.source.textext.css.files dest = "${buildDir}/style.all.css" } minifyCss { source = combineCss dest = "${buildDir}/style.min.css" } war { it.dependsOn minifyCss it.dependsOn minifyJs from "${buildDir}/scripts.min.js" from "${buildDir}/style.min.css" from "${buildDir}/scripts.all.js" from "${buildDir}/style.all.css" } assemble.dependsOn 'minifyCss' assemble.dependsOn 'minifyJs' compileJava.options.encoding = 'UTF-8' tomcat { httpPort = 8080 contextPath = '/' }