https://github.com/web3j/quorum
Raw File
Tip revision: 4dc92290e41bf3bd76215adc7b26f067a816e112 authored by Antony Denyer on 15 November 2019, 08:40:50 UTC
Pull build scripts from github
Tip revision: 4dc9229
build.gradle
plugins {
    id 'java'
    id 'idea'
    id 'jacoco'
    id "com.diffplug.gradle.spotless" version "3.25.0"
    id 'io.codearte.nexus-staging' version '0.21.1'
    id "de.marcphilipp.nexus-publish" version "0.4.0"
    id 'org.jetbrains.kotlin.jvm' version '1.3.21'
    id 'org.unbroken-dome.test-sets' version '2.2.0'
    id "de.undercouch.download" version "4.0.0"
}


description 'web3j Quorum API'

ext {
    web3jVersion = project.property('version')
    jacksonKotlinVersion = '2.9.0'

    logbackVersion = '1.2.3'
    junitVersion = '4.12'
    mockitoVersion = '1.10.19'
    assertjCoreVersion = '3.8.0'
    ktlintVersion = '0.31.0'
}


nexusStaging {
    username System.getenv('OSSRH_USERNAME')
    password System.getenv('OSSRH_PASSWORD')
}

apply {
    [
        'jacoco',
        'java',
        'javadoc',
        'repositories',
        'publish',
        'spotless',
    ].each { buildScript ->
        download {
            src "https://raw.githubusercontent.com/web3j/build-tools/master/gradle/$buildScript/build.gradle"
            dest "$rootDir/gradle/$buildScript/build.gradle"
            overwrite true
            quiet true
            onlyIfModified true
        }
        from("$rootDir/gradle/$buildScript/build.gradle")
    }
}

publishing {
    publications {
        maven(MavenPublication) {
            pom {
                scm {
                    url = "https://github.com/web3j/web3j-quorum"
                    connection = "scm:https://github.com/web3j/web3j-quorum.git"
                    developerConnection = "scm:git://github.com/web3j/web3j-quorum.git"
                }
            }
        }
    }
}

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.21",
            "com.fasterxml.jackson.module:jackson-module-kotlin:$jacksonKotlinVersion",
            "org.web3j:core:$web3jVersion"

    implementation("com.github.shyiko:ktlint:${ktlintVersion}") { exclude group: 'org.slf4j' }

    testImplementation "junit:junit:$junitVersion",
            "ch.qos.logback:logback-core:$logbackVersion",
            "ch.qos.logback:logback-classic:$logbackVersion",
            "org.mockito:mockito-core:$mockitoVersion",
            "org.assertj:assertj-core:$assertjCoreVersion",
            "org.web3j:core:$web3jVersion:tests"
}


tasks.withType(Test) {
    reports.html.destination = file("${reporting.baseDir}/${name}")
}

compileKotlin {
    kotlinOptions {
        jvmTarget = "1.8"
    }
}
compileTestKotlin {
    kotlinOptions {
        jvmTarget = "1.8"
    }
}
testSets {
    integrationTest {
        dirName = 'integration-test'
    }
}
integrationTest.mustRunAfter test
compileIntegrationTestKotlin { kotlinOptions.jvmTarget = '1.8' }
back to top