plugins { id 'ru.vyarus.animalsniffer' version '1.3.0' } defaultTasks 'clean' apply from: '../utils.gradle' import org.apache.tools.ant.filters.* apply plugin: 'java' apply plugin: 'ru.vyarus.animalsniffer' apply plugin: 'maven' apply plugin: 'signing' apply plugin: 'checkstyle' apply plugin: 'eclipse' task sourcesJar(type: Jar) { classifier = 'sources' from sourceSets.main.allSource } task javadocJar(type: Jar, dependsOn: javadoc) { classifier = 'javadoc' from javadoc.destinationDir } repositories { mavenCentral() } artifacts { archives sourcesJar archives javadocJar } signing { sign configurations.archives } signArchives { onlyIf { Task task -> def shouldExec = false for (myArg in project.gradle.startParameter.taskRequests[0].args) { if (myArg.toLowerCase().contains('signjars') || myArg.toLowerCase().contains('uploadarchives')) { shouldExec = true } } return shouldExec } } checkstyle { configFile = rootProject.file('checkstyle.xml') ignoreFailures = false } task testJar(type: Jar) { classifier = 'tests' from sourceSets.test.output } configurations { tests } artifacts { tests testJar } dependencies { compile group: 'com.squareup.okhttp3', name: 'okhttp', version: '3.7.0' compile group: 'com.squareup.okhttp3', name: 'logging-interceptor', version: '3.7.0' compile group: 'com.squareup.okhttp3', name: 'okhttp-urlconnection', version: '3.7.0' compile group: 'com.google.code.gson', name: 'gson', version: '2.8.0' compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.4' compile group: 'org.glassfish.jersey.bundles.repackaged', name: 'jersey-jsr166e', version: '2.22.2' testCompile group: 'com.squareup.okhttp3', name: 'mockwebserver', version: '3.7.0' testCompile group: 'ch.qos.logback', name: 'logback-classic', version: '1.1.7' testCompile group: 'com.google.guava', name: 'guava', version: '19.0' testCompile group: 'junit', name: 'junit-dep', version: '4.11' signature 'org.codehaus.mojo.signature:java17:1.0@signature' } processResources { filter ReplaceTokens, tokens: [ "pom.version": project.version, "build.date" : getDate() ] } uploadArchives { repositories { mavenDeployer { beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } repository(url: "http://oss.sonatype.org/service/local/staging/deploy/maven2/") { authentication(userName: System.env.CI_DEPLOY_USERNAME, password: System.env.CI_DEPLOY_PASSWORD) } snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/"){ authentication(userName: System.env.CI_DEPLOY_USERNAME, password: System.env.CI_DEPLOY_PASSWORD) } pom.project { name 'core' packaging 'jar' // optionally artifactId can be defined here description 'Client library to use the IBM Watson Services' url 'https://www.ibm.com/watson/developercloud' scm { connection 'scm:git:git@github.com:watson-developer-cloud/java-sdk.git' developerConnection 'scm:git:git@github.com:watson-developer-cloud/java-sdk.git' url 'https://github.com/watson-developer-cloud/java-sdk' } licenses { license { name 'The Apache License, Version 2.0' url 'http://www.apache.org/licenses/LICENSE-2.0.txt' } } developers { developer { id 'german' name 'German Attanasio' email 'germanatt@us.ibm.com' } } } } } }