- plugins {
- id "com.github.johnrengelman.shadow" version "7.1.2"
- }
- #if (${MIXINS})
- loom {
- forge {
- mixinConfig "${ARTIFACT_ID}-common.mixins.json"
- mixinConfig "${ARTIFACT_ID}.mixins.json"
- }
- }
- #end
- architectury {
- platformSetupLoomIde()
- forge()
- }
- configurations {
- common
- shadowCommon // Don't use shadow from the shadow plugin because we don't want IDEA to index this.
- compileClasspath.extendsFrom common
- runtimeClasspath.extendsFrom common
- developmentForge.extendsFrom common
- }
- dependencies {
- forge "net.minecraftforge:forge:${rootProject.forge_version}"
- #if (${ARCHITECTURY_API})
- // Remove the next line if you don't want to depend on the API
- modApi "${ARCHITECTURY_GROUP}:architectury-forge:${rootProject.architectury_version}"
- #end
- common(project(path: ":common", configuration: "namedElements")) { transitive false }
- shadowCommon(project(path: ":common", configuration: "transformProductionForge")) { transitive = false }
- }
- processResources {
- inputs.property "version", project.version
- filesMatching("META-INF/mods.toml") {
- expand "version": project.version
- }
- }
- shadowJar {
- exclude "fabric.mod.json"
- configurations = [project.configurations.shadowCommon]
- archiveClassifier.set("dev-shadow")
- }
- remapJar {
- inputFile.set shadowJar.archiveFile
- dependsOn shadowJar
- archiveClassifier.set(null)
- }
- jar {
- archiveClassifier.set("dev")
- }
- sourcesJar {
- def commonSources = project(":common").sourcesJar
- dependsOn commonSources
- from commonSources.archiveFile.map { zipTree(it) }
- }
- components.java {
- withVariantsFromConfiguration(project.configurations.shadowRuntimeElements) {
- skip()
- }
- }
- publishing {
- publications {
- mavenForge(MavenPublication) {
- artifactId = rootProject.archives_base_name + "-" + project.name
- from components.java
- }
- }
- // See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing.
- repositories {
- // Add repositories to publish to here.
- }
- }
- plugins {
- id "com.github.johnrengelman.shadow" version "7.1.2"
- }
- #if (${MIXINS})
- loom {
- forge {
- mixinConfig "${MOD_ID}-common.mixins.json"
- mixinConfig "${MOD_ID}.mixins.json"
- }
- }
- #end
- architectury {
- platformSetupLoomIde()
- forge()
- }
- configurations {
- common
- shadowCommon // Don't use shadow from the shadow plugin because we don't want IDEA to index this.
- compileClasspath.extendsFrom common
- runtimeClasspath.extendsFrom common
- developmentForge.extendsFrom common
- }
- dependencies {
- forge "net.minecraftforge:forge:${rootProject.forge_version}"
- #if (${ARCHITECTURY_API})
- // Remove the next line if you don't want to depend on the API
- modApi "${ARCHITECTURY_GROUP}:architectury-forge:${rootProject.architectury_version}"
- #end
- common(project(path: ":common", configuration: "namedElements")) { transitive false }
- shadowCommon(project(path: ":common", configuration: "transformProductionForge")) { transitive = false }
- }
- processResources {
- inputs.property "version", project.version
- filesMatching("META-INF/mods.toml") {
- expand "version": project.version
- }
- }
- shadowJar {
- exclude "fabric.mod.json"
- configurations = [project.configurations.shadowCommon]
- archiveClassifier.set("dev-shadow")
- }
- remapJar {
- inputFile.set shadowJar.archiveFile
- dependsOn shadowJar
- archiveClassifier.set(null)
- }
- jar {
- archiveClassifier.set("dev")
- }
- sourcesJar {
- def commonSources = project(":common").sourcesJar
- dependsOn commonSources
- from commonSources.archiveFile.map { zipTree(it) }
- }
- components.java {
- withVariantsFromConfiguration(project.configurations.shadowRuntimeElements) {
- skip()
- }
- }
- publishing {
- publications {
- mavenForge(MavenPublication) {
- artifactId = rootProject.archives_base_name + "-" + project.name
- from components.java
- }
- }
- // See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing.
- repositories {
- // Add repositories to publish to here.
- }
- }