Files
architectury-api/forge/build.gradle
2020-11-15 21:12:59 +08:00

113 lines
2.8 KiB
Groovy

buildscript {
repositories {
maven { url "https://files.minecraftforge.net/maven" }
jcenter()
mavenCentral()
}
dependencies {
classpath(group: "net.minecraftforge.gradle", name: "ForgeGradle", version: "3.+", changing: true)
}
}
plugins {
id "com.github.johnrengelman.shadow" version "5.0.0"
id "eclipse"
id "com.matthewprenger.cursegradle"
}
apply plugin: "net.minecraftforge.gradle"
minecraft {
mappings(channel: "official", version: rootProject.architect.minecraft)
accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
runs {
client {
workingDirectory project.file("run")
mods {
architectury {
source sourceSets.main
}
}
}
server {
workingDirectory project.file("run")
mods {
architectury {
source sourceSets.main
}
}
}
}
}
repositories {
jcenter()
maven { url "https://files.minecraftforge.net/maven" }
}
configurations {
shadow
}
dependencies {
minecraft("net.minecraftforge:forge:${rootProject.architect.minecraft}-${rootProject.forge_version}")
compile(project(path: ":common", configuration: "mcpGenerateMod")) {
transitive = false
}
shadow(project(path: ":common", configuration: "mcp")) {
transitive = false
}
}
shadowJar {
exclude "fabric.mod.json"
configurations = [project.configurations.shadow]
classifier "forge"
}
reobf {
shadowJar {}
}
publishing {
publications {
mavenForge(MavenPublication) {
artifact(shadowJar.archivePath) {
builtBy shadowJar
classifier "forge"
}
}
}
}
curseforge {
if (project.hasProperty("curse_api_key") || System.getenv("curse_api_key") != null) {
apiKey = project.hasProperty("curse_api_key") ? project.property("curse_api_key") : System.getenv("curse_api_key")
project {
id = "419699"
releaseType = "release"
changelogType = "html"
changelog = releaseChangelog()
addGameVersion "1.16.4"
addGameVersion "Java 8"
addGameVersion "Forge"
relations {
requiredDependency "fabric-api"
}
mainArtifact(shadowJar.archivePath) {
displayName = "[Forge $rootProject.supported_version] v$project.version"
}
afterEvaluate {
uploadTask.dependsOn("build")
}
}
}
options {
forgeGradleIntegration = false
javaVersionAutoDetect = false
}
}
rootProject.tasks.getByName("curseforgePublish").dependsOn curseforge