plugins { id 'net.fabricmc.fabric-loom' version "${loom_version}" } repositories { mavenCentral() } loom { splitEnvironmentSourceSets() mods { 'shacraft_admission' { sourceSet sourceSets.main sourceSet sourceSets.client } } } dependencies { minecraft "com.mojang:minecraft:${project.minecraft_version}" implementation "net.fabricmc:fabric-loader:${project.loader_version}" implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" testImplementation platform('org.junit:junit-bom:5.12.2') testImplementation 'org.junit.jupiter:junit-jupiter' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } processResources { inputs.property 'version', project.version filesMatching('fabric.mod.json') { expand version: project.version } } tasks.withType(JavaCompile).configureEach { options.release = 25 } java { toolchain.languageVersion = JavaLanguageVersion.of(25); withSourcesJar() } test { useJUnitPlatform() } // Pure HTTP/validation tests use the same client implementation without launching Minecraft. sourceSets.test.compileClasspath += sourceSets.client.output sourceSets.test.runtimeClasspath += sourceSets.client.output