corda/tools/checkpoint-agent/build.gradle
2024-08-13 14:15:09 +01:00

70 lines
2.0 KiB
Groovy

buildscript {
// For sharing constants between builds
Properties constants = new Properties()
file("$projectDir/../../constants.properties").withInputStream { constants.load(it) }
ext.kotlin_version = constants.getProperty("kotlinVersion")
ext.javaassist_version = "3.12.1.GA"
repositories {
mavenLocal()
mavenCentral()
jcenter()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
repositories {
mavenLocal()
mavenCentral()
jcenter()
}
apply plugin: 'kotlin'
apply plugin: 'idea'
apply plugin: 'net.corda.plugins.publish-utils'
apply plugin: 'com.jfrog.artifactory'
description 'A javaagent to allow hooking into Kryo checkpoints'
dependencies {
compileOnly "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
compileOnly "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
compileOnly "javassist:javassist:$javaassist_version"
compileOnly "com.esotericsoftware:kryo:$kryo_version"
compileOnly "co.paralleluniverse:quasar-core:$quasar_version"
compileOnly (project(':core')) {
transitive = false
}
// Unit testing helpers.
testCompile "org.junit.jupiter:junit-jupiter-api:${junit_jupiter_version}"
testCompile "junit:junit:$junit_version"
// SLF4J: commons-logging bindings for a SLF4J back end
compileOnly "org.slf4j:slf4j-api:$slf4j_version"
}
jar {
archiveBaseName = "${project.name}"
manifest {
attributes(
'Premain-Class': 'net.corda.tools.CheckpointAgent',
'Can-Redefine-Classes': 'true',
'Can-Retransform-Classes': 'true',
'Can-Set-Native-Method-Prefix': 'true',
'Implementation-Title': "CheckpointAgent",
'Implementation-Version': rootProject.version
)
}
from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
}
publish {
name 'corda-tools-checkpoint-agent'
}