mirror of
https://github.com/corda/corda.git
synced 2025-01-17 10:20:02 +00:00
99e802c5c5
* Initial commit based on experimental kryo hook agent. * WIP * Added documentation. * Additional improvements and documentation following more testing. * Added field level instrumentation + basic type handlers for String, byteArray, charArray, primitive types. * Working version (without array type handling) * Missing build.gradle file. * Handle display of Arrays and String. Pruning output to avoid repetition (by loop depth, object count). * Added configurable StackDepth (for display purposes) and filter out ProgressTracker stacks. * Further array handling (Object arrays, 2D, 3D), improved display and general code cleanup. * Various fixes and improvements following demo to RP. * Clean-up * Further clean-up * Set checkpoint id before deserialization. * Update documentation * Final clean-up. * Minor documentation fixes. * Updates following PR review feedback. * Add changelog entry.
65 lines
1.9 KiB
Groovy
65 lines
1.9 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'
|
|
|
|
description 'A javaagent to allow hooking into Kryo checkpoints'
|
|
|
|
dependencies {
|
|
compile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version"
|
|
compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
|
|
compile "javassist:javassist:$javaassist_version"
|
|
compile "com.esotericsoftware:kryo:4.0.0"
|
|
compile "co.paralleluniverse:quasar-core:$quasar_version:jdk8"
|
|
|
|
compile (project(':core')) {
|
|
transitive = false
|
|
}
|
|
|
|
// Unit testing helpers.
|
|
compile "org.junit.jupiter:junit-jupiter-api:${junit_jupiter_version}"
|
|
compile "junit:junit:$junit_version"
|
|
|
|
// SLF4J: commons-logging bindings for a SLF4J back end
|
|
compile "org.slf4j:jcl-over-slf4j:$slf4j_version"
|
|
compile "org.slf4j:slf4j-api:$slf4j_version"
|
|
}
|
|
|
|
jar {
|
|
archiveName = "${project.name}.jar"
|
|
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) } }
|
|
}
|