import net.fabricmc.loom.task.RemapJarTask archivesBaseName = rootProject.name + "-" + project.name loom { accessWidenerPath = gradle.rootProject.project("fabric").file("src/main/resources/roughlyenoughitems.accessWidener") } dependencies { modCompileOnly("net.fabricmc:fabric-loader:${project.fabricloader_version}") modApi("me.shedaniel.cloth:cloth-config:${cloth_config_version}") modApi("dev.architectury:architectury:${architectury_version}") } architectury { common(platforms.split(",")) } remapJar { archiveClassifier = "raw" } task fakeJar(type: Jar, dependsOn: remapJar) { from remapJar.archiveFile.map { zipTree(it) } from(rootProject.file("fake/fabric.mod.json")) { into "" } archiveClassifier = null } task fakeForgeJar(type: Jar, dependsOn: jar) { from jar.archiveFile.map { zipTree(it) } from(rootProject.file("fake/mods.toml")) { into "META-INF" } ["REIPlugin", "REIPluginClient", "REIPluginCommon", "REIPluginDedicatedServer", "REIPluginLoader", "REIPluginLoaderClient", "REIPluginLoaderCommon", "REIPluginLoaderDedicatedServer"].each { from(rootProject.file("fake/${it}.class")) { into "me/shedaniel/rei/forge" } } archiveClassifier = "fake-forge" } artifacts { apiElements(fakeJar) runtimeElements(fakeJar) } afterEvaluate { configurations.apiElements.artifacts.removeIf { it.buildDependencies.getDependencies(null).contains(tasks.remapJar) } configurations.runtimeElements.artifacts.removeIf { it.buildDependencies.getDependencies(null).contains(tasks.remapJar) } } publishing { publications { mavenCommon(MavenPublication) { artifactId = rootProject.name + "-" + project.name from components.java } } }