This commit resolves a build error related to mismatched JVM target versions for the Kotlin and Java compile tasks. Previously, the 'compileJava' task was targeting JVM 11, while the 'compileKotlin' task was targeting JVM 8. Both tasks have now been set to target JVM 11, ensuring consistency and eliminating the build error.
115 lines
3.7 KiB
Plaintext
115 lines
3.7 KiB
Plaintext
import org.gradle.api.tasks.testing.logging.TestExceptionFormat.*
|
|
import org.gradle.api.tasks.testing.logging.TestLogEvent.*
|
|
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
|
|
|
// library version is defined in gradle.properties
|
|
val libraryVersion: String by project
|
|
|
|
plugins {
|
|
id("org.jetbrains.kotlin.jvm") version "1.6.10"
|
|
id("java-library")
|
|
id("maven-publish")
|
|
id("signing")
|
|
|
|
// Custom plugin to generate the native libs and bindings file
|
|
id("org.bitcoindevkit.plugins.generate-jvm-bindings")
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
java {
|
|
sourceCompatibility = JavaVersion.VERSION_11
|
|
targetCompatibility = JavaVersion.VERSION_11
|
|
withSourcesJar()
|
|
withJavadocJar()
|
|
}
|
|
|
|
tasks.withType<Test> {
|
|
useJUnitPlatform()
|
|
|
|
testLogging {
|
|
events(PASSED, SKIPPED, FAILED, STANDARD_OUT, STANDARD_ERROR)
|
|
exceptionFormat = FULL
|
|
showExceptions = true
|
|
showCauses = true
|
|
showStackTraces = true
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation(platform("org.jetbrains.kotlin:kotlin-bom"))
|
|
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7")
|
|
implementation("net.java.dev.jna:jna:5.8.0")
|
|
api("org.slf4j:slf4j-api:1.7.30")
|
|
testImplementation("junit:junit:4.13.2")
|
|
testRuntimeOnly("org.junit.vintage:junit-vintage-engine:5.8.2")
|
|
testImplementation("ch.qos.logback:logback-classic:1.2.3")
|
|
testImplementation("ch.qos.logback:logback-core:1.2.3")
|
|
}
|
|
|
|
afterEvaluate {
|
|
publishing {
|
|
publications {
|
|
create<MavenPublication>("maven") {
|
|
groupId = "org.bitcoindevkit"
|
|
artifactId = "bdk-jvm"
|
|
version = libraryVersion
|
|
|
|
from(components["java"])
|
|
pom {
|
|
name.set("bdk-jvm")
|
|
description.set("Bitcoin Dev Kit Kotlin language bindings.")
|
|
url.set("https://bitcoindevkit.org")
|
|
licenses {
|
|
license {
|
|
name.set("APACHE 2.0")
|
|
url.set("https://github.com/bitcoindevkit/bdk/blob/master/LICENSE-APACHE")
|
|
}
|
|
license {
|
|
name.set("MIT")
|
|
url.set("https://github.com/bitcoindevkit/bdk/blob/master/LICENSE-MIT")
|
|
}
|
|
}
|
|
developers {
|
|
developer {
|
|
id.set("notmandatory")
|
|
name.set("Steve Myers")
|
|
email.set("notmandatory@noreply.github.org")
|
|
}
|
|
developer {
|
|
id.set("artfuldev")
|
|
name.set("Sudarsan Balaji")
|
|
email.set("sudarsan.balaji@artfuldev.com")
|
|
}
|
|
}
|
|
scm {
|
|
connection.set("scm:git:github.com/bitcoindevkit/bdk-ffi.git")
|
|
developerConnection.set("scm:git:ssh://github.com/bitcoindevkit/bdk-ffi.git")
|
|
url.set("https://github.com/bitcoindevkit/bdk-ffi/tree/master")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
signing {
|
|
val signingKeyId: String? by project
|
|
val signingKey: String? by project
|
|
val signingPassword: String? by project
|
|
useInMemoryPgpKeys(signingKeyId, signingKey, signingPassword)
|
|
sign(publishing.publications)
|
|
}
|
|
|
|
// This task dependency ensures that we build the bindings
|
|
// binaries before running the tests
|
|
tasks.withType<KotlinCompile> {
|
|
dependsOn("buildJvmLib")
|
|
|
|
kotlinOptions {
|
|
jvmTarget = "11"
|
|
}
|
|
}
|