group = 'asys' version = '0.6.11-SNAPSHOT' apply plugin: 'application' mainClassName = "asys.zond.Main" configurations { included includedEx compile.extendsFrom included compile.extendsFrom includedEx } compileJava { dependsOn ':bridge-protocol:compileJava' } def zp(FileTree ft) { return ft.matching { exclude 'org/apache/commons/exec/StreamPumper.class' } } jar { dependsOn ':bridge-protocol:jar' dependsOn configurations.included dependsOn configurations.includedEx manifest { attributes 'Implementation-Title': 'ASys Zond', 'Implementation-Version': version, 'Main-Class': mainClassName } baseName = project.group + '.' + project.name from { configurations.included.collect { it.isDirectory() ? it : zipTree(it) } } from { configurations.includedEx.collect { it.isDirectory() ? it : zp(zipTree(it)) } } } ext { nettyVersion = '4.0.23.Final' } dependencies { included files(project(':bridge-protocol').sourceSets.main.output.classesDir) included group: 'org.fusesource.jansi', name: 'jansi', version: '1.11' includedEx group: 'org.apache.commons', name: 'commons-exec', version: '1.3' included group: 'io.netty', name: 'netty-codec', version: nettyVersion included group: 'com.google.guava', name: 'guava', version: '21.0' included group: 'jline', name: 'jline', version: '2.13' }