Skip to content

Commit

Permalink
chore: switch to gradle 5.6 from maven
Browse files Browse the repository at this point in the history
  • Loading branch information
HashEngineering committed Nov 22, 2021
1 parent 8af1370 commit 9b4d347
Show file tree
Hide file tree
Showing 15 changed files with 505 additions and 925 deletions.
17 changes: 17 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
buildscript {
repositories {
mavenCentral()
}

dependencies {
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.6'
}
}

allprojects {
repositories {
mavenCentral()
}

group = 'org.dashj'
}
127 changes: 127 additions & 0 deletions core/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
apply plugin: 'java'
apply plugin: 'com.google.protobuf'
apply plugin: 'eclipse'
apply plugin: 'maven-publish'
apply plugin: 'jacoco'
apply plugin: 'signing'

version = '0.18-GRADLE-SNAPSHOT'
archivesBaseName = 'dashj-core'
eclipse.project.name = 'dashj-core'

dependencies {
compile 'org.bouncycastle:bcprov-jdk15to18:1.68'
implementation 'com.google.guava:guava:28.2-android'
compile 'com.google.protobuf:protobuf-java:3.14.0'
implementation 'com.squareup.okhttp3:okhttp:3.12.8'
implementation 'org.slf4j:slf4j-api:1.7.30'
implementation 'net.jcip:jcip-annotations:1.0'
compileOnly 'org.fusesource.leveldbjni:leveldbjni-all:1.8'
testImplementation 'junit:junit:4.13.1'
testImplementation 'org.easymock:easymock:3.2'
testImplementation 'com.fasterxml.jackson.core:jackson-databind:2.9.10.7'
testImplementation 'org.slf4j:slf4j-jdk14:1.7.30'
testImplementation 'com.h2database:h2:1.3.167'
testImplementation 'org.fusesource.leveldbjni:leveldbjni-all:1.8'
testImplementation 'org.hamcrest:hamcrest-library:1.3'

// Dash Specific
implementation 'de.sfuhrm:saphir-hash-core:3.0.10'
implementation 'org.dashj:dashj-bls:0.18.1'
implementation 'com.lambdaworks:scrypt:1.4.0'
implementation 'org.json:json:20210307'

}

sourceCompatibility = 1.8
compileJava.options.encoding = 'UTF-8'
compileTestJava.options.encoding = 'UTF-8'
javadoc.options.encoding = 'UTF-8'

protobuf {
protoc {
artifact = 'com.google.protobuf:protoc:3.14.0'
}
generateProtoTasks {
all().each { task ->
task.builtins {
java {
option "lite"
}
}
}
}
generatedFilesBaseDir = new File(projectDir, '/src') // workaround for '$projectDir/src'
}

test {
exclude 'org/bitcoinj/core/PeerTest*'
exclude 'org/bitcoinj/core/TransactionBroadcastTest*'
exclude 'org/bitcoinj/net/NetworkAbstractionTests*'
exclude 'org/bitcoinj/protocols/channels/ChannelConnectionTest*'
testLogging {
events "failed"
exceptionFormat "full"
}
}

tasks.withType(Test) {
systemProperty "java.library.path", "../contrib/dashj-bls/bls/target/cmake"
println (systemProperties.get("java.library.path"))
}

task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}

task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources'
from sourceSets.main.allSource
}

artifacts {
archives sourcesJar
archives javadocJar
}

/*publishing {
tasks.withType(Sign)*.enabled = false
publications {
maven(MavenPublication) {
from components.java
artifact sourcesJar
}
}
}*/

publishing {
publications {
mavenJava(MavenPublication) {
artifactId = 'dashj-core'
from components.java
artifact sourcesJar
artifact javadocJar

pom {
description = 'A Java Dash library'
}
}
}
}

signing {
required { gradle.taskGraph.hasTask("publish") }
sign configurations.archives
}

assemble.dependsOn(publishToMavenLocal)
assemble.dependsOn(sourcesJar)

jacocoTestReport {
dependsOn test // tests are required to run before generating the report
reports {
xml.enabled true
xml.destination file("${rootProject.projectDir}/build/reports/jacoco/jacoco.xml")
}
}
Loading

0 comments on commit 9b4d347

Please sign in to comment.