import org.apache.tools.ant.filters.ReplaceTokens import org.apache.tools.ant.taskdefs.condition.Os plugins { id "com.github.johnrengelman.shadow" version "1.1.2" id "com.github.kt3k.coveralls" version "2.0.1x" } apply plugin: 'java' apply plugin: 'eclipse' apply plugin: 'application' apply plugin: 'jacoco' wrapper.gradleVersion = '2.1' version = '0.1.0-SNAPSHOT' sourceCompatibility = 1.8 sourceSets.main.resources.srcDirs += 'src/main/java' sourceSets.test.resources.srcDirs += 'src/test/java' mainClassName = "io.bitsquare.app.gui.BitsquareAppMain" run { if (project.hasProperty('args')) { args project.args.split(',') } } processResources { from(sourceSets.main.resources.srcDirs) { include '**/*.properties' filter(ReplaceTokens, tokens: ['app.version': project.version]) } } repositories { jcenter() maven { url 'http://partnerdemo.artifactoryonline.com/partnerdemo/libs-snapshots-local' } } dependencies { compile 'org.bitcoinj:bitcoinj-core:0.12.2' compile 'net.tomp2p:tomp2p-all:5.0-Alpha.8f1cafb-SNAPSHOT' compile 'io.reactivex:rxjava:1.0.0' compile 'org.springframework:spring-core:4.1.1.RELEASE' compile 'net.sf.jopt-simple:jopt-simple:4.8' compile 'org.slf4j:slf4j-api:1.7.7' compile 'ch.qos.logback:logback-core:1.1.2' compile 'ch.qos.logback:logback-classic:1.1.2' compile 'com.google.inject:guice:3.0' compile 'com.google.guava:guava:16.0.1' compile 'com.google.code.gson:gson:2.2.4' compile 'org.controlsfx:controlsfx:8.0.6_20' compile 'de.jensd:fontawesomefx:8.0.0' compile 'net.glxn:qrgen:1.3' compile 'com.google.code.findbugs:jsr305:2.0.3' compile 'net.jcip:jcip-annotations:1.0' compile 'org.jetbrains:annotations:13.0' compile 'eu.hansolo.enzo:Enzo:0.1.5' testCompile 'junit:junit:4.11' testCompile "org.mockito:mockito-core:1.+" testCompile 'org.springframework:spring-test:4.1.1.RELEASE' } shadowJar.classifier = 'app' task packageNative(type: Exec, dependsOn: shadowJar) { if (Os.isFamily(Os.FAMILY_MAC)) executable "${project.rootDir}/package/mac.sh" else if (Os.isFamily(Os.FAMILY_UNIX)) executable "${project.rootDir}/package/linux.sh" else if (Os.isFamily(Os.FAMILY_WINDOWS)) executable "${project.rootDir}/package/windows.bat" else throw new GradleException("Unsupported OS: " + System.properties['os.name']) args project.version, shadowJar.archivePath, mainClassName } task appJar(dependsOn: shadowJar) { group = "shadow" description = "Builds a Bitsquare client UI executable jar" } task bootstrapNodeJar(type: com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar) { group = "shadow" description = "Builds a Bitsquare bootstrap node executable jar" manifest.attributes 'Main-Class': 'io.bitsquare.app.cli.BootstrapNodeMain' classifier = 'bootstrapNode' from(project.convention.getPlugin(JavaPluginConvention).sourceSets.main.output) configurations = [project.configurations.runtime] exclude('META-INF/INDEX.LIST', 'META-INF/*.SF', 'META-INF/*.DSA', 'META-INF/*.RSA') } jacocoTestReport { reports { xml.enabled = true html.enabled = true } }