Skip to content

Instantly share code, notes, and snippets.

View anthonymonori's full-sized avatar

Antal Monori anthonymonori

View GitHub Profile
@anthonymonori
anthonymonori / captureFingerprints.gradle.kts
Last active December 21, 2022 16:26 — forked from ghale/captureFingerprints.gradle
Capture task classpath fingerprints with Gradle Kotlin DSL
// Add into root project, make sure you have Gradle Enterprise plugin
val buildScanApi = project.extensions.findByName("buildScan") as BuildScanExtension
subprojects {
// If you want to limit it to certain module(s), wrap it with: if (name == "module-name") { }
val fingerprinter = serviceOf<org.gradle.internal.fingerprint.classpath.ClasspathFingerprinter>()
tasks.withType(org.jetbrains.kotlin.gradle.dsl.KotlinCompile::class.java).configureEach task@{
doFirst {
var classLoader: ClassLoader = this@task.javaClass.classLoader
while (classLoader is java.net.URLClassLoader) {
val fingerprints = mutableSetOf<Array<String>>()