1d34224416
Look, this will make the git history look funny, but trimming unnecessary depth from the source tree is a very necessary sanity-preserving measure when dealing with a super-modularized codebase like this one. While it makes the project configuration a bit less conventional, it will save you several clicks every time you jump between modules. Which you'll do a lot, because it's *modul*ar. The src/main/java convention makes a lot of sense for a non-modular project though. This ain't that.
42 lines
922 B
Groovy
42 lines
922 B
Groovy
plugins {
|
|
id 'java'
|
|
id "me.champeau.jmh" version "0.6.6"
|
|
}
|
|
|
|
java {
|
|
toolchain {
|
|
languageVersion.set(JavaLanguageVersion.of(21))
|
|
}
|
|
}
|
|
|
|
apply from: "$rootProject.projectDir/srcsets.gradle"
|
|
|
|
dependencies {
|
|
implementation libs.bundles.slf4j
|
|
|
|
implementation libs.notnull
|
|
implementation libs.commons.lang3
|
|
implementation libs.fastutil
|
|
implementation libs.lz4
|
|
implementation libs.guava
|
|
|
|
testImplementation libs.bundles.slf4j.test
|
|
testImplementation libs.bundles.junit
|
|
testImplementation libs.mockito
|
|
}
|
|
|
|
jmh {
|
|
jvmArgs = [ "--enable-preview" ]
|
|
}
|
|
tasks.withType(me.champeau.jmh.WithJavaToolchain).configureEach {
|
|
javaLauncher.set(javaToolchains.launcherFor {
|
|
languageVersion.set(JavaLanguageVersion.of(21))
|
|
})
|
|
}
|
|
tasks.withType(me.champeau.jmh.JmhBytecodeGeneratorTask).configureEach {
|
|
jvmArgs = ["--enable-preview"]
|
|
}
|
|
test {
|
|
useJUnitPlatform()
|
|
}
|