plugins { id 'java' id 'application' id 'org.graalvm.buildtools.native' version '0.10.2' } java { toolchain { languageVersion.set(JavaLanguageVersion.of(rootProject.ext.jvmVersion)) } } sourceSets { main { java { srcDirs = [ 'java', ] } resources { srcDirs = [ 'resources' ] } } test { java { srcDirs = [ 'test' ] } resources { srcDirs = [ 'test-resources' ] } } demo { java { srcDirs = [ 'demo' ] } resources { srcDirs = [ 'demo-resources' ] } } } application { mainClass = 'demo.OneBillionRowsDemo' } graalvmNative { binaries.all { resources.autodetect() buildArgs=['-H:+ForeignAPISupport', '-H:+UnlockExperimentalVMOptions'] } toolchainDetection = false } dependencies { implementation libs.bundles.slf4j implementation libs.notnull implementation libs.commons.lang3 implementation libs.lz4 implementation libs.commons.compress implementation libs.zstd testImplementation libs.bundles.slf4j.test testImplementation libs.bundles.junit testImplementation libs.mockito demoImplementation sourceSets.main.output demoImplementation libs.bundles.slf4j demoImplementation libs.notnull demoImplementation libs.commons.lang3 demoImplementation libs.lz4 demoImplementation libs.commons.compress demoImplementation libs.zstd demoImplementation libs.duckdb } test { useJUnitPlatform() }