plugins { id 'com.github.johnrengelman.shadow' //id "me.shedaniel.unified-publishing" } repositories { maven { name = 'NeoForged' url = 'https://maven.neoforged.net/releases' } } architectury { platformSetupLoomIde() neoForge() } loom { accessWidenerPath = project(":common").loom.accessWidenerPath } configurations { common { canBeResolved = true canBeConsumed = false } compileClasspath.extendsFrom common runtimeClasspath.extendsFrom common developmentNeoForge.extendsFrom common // Files in this configuration will be bundled into your mod using the Shadow plugin. // Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files. shadowBundle { canBeResolved = true canBeConsumed = false } archivesBaseName = rootProject.archives_base_name + "-neoforge" } dependencies { neoForge "net.neoforged:neoforge:$rootProject.neoforge_version" modImplementation include ("maven.modrinth:midnightlib:${rootProject.midnightlib_version}-neoforge") common(project(path: ':common', configuration: 'namedElements')) { transitive false } shadowBundle project(path: ':common', configuration: 'transformProductionNeoForge') } processResources { inputs.property 'version', project.version filesMatching('META-INF/neoforge.mods.toml') { expand version: project.version } } shadowJar { configurations = [project.configurations.shadowBundle] archiveClassifier = 'dev-shadow' } remapJar { input.set shadowJar.archiveFile } sourcesJar { def commonSources = project(":common").sourcesJar dependsOn commonSources from commonSources.archiveFile.map { zipTree(it) } } components.java { withVariantsFromConfiguration(project.configurations.shadowRuntimeElements) { skip() } }