diff options
Diffstat (limited to 'build.gradle')
| -rw-r--r-- | build.gradle | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..d96f118 --- /dev/null +++ b/build.gradle @@ -0,0 +1,85 @@ +plugins { + id 'net.fabricmc.fabric-loom' version "${loom_version}" + id 'maven-publish' +} + +version = project.mod_version +group = project.maven_group + +base { + archivesName = project.archives_base_name +} + +fabricApi { + configureDataGeneration { + client = true + } +} + +dependencies { + // To change the versions see the gradle.properties file + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}" +} + +processResources { + inputs.property "version", project.version + inputs.property "minecraft_version", project.minecraft_version + inputs.property "loader_version", project.loader_version + filteringCharset "UTF-8" + + filesMatching("fabric.mod.json") { + expand "version": project.version, + "minecraft_version": project.minecraft_version, + "loader_version": project.loader_version + } +} + +processResources { + // expand all properties from gradle.properties + def stringProperties = providers.gradlePropertiesPrefixedBy('').get() + stringProperties.each { inputs.property(it.key, it.value) } + + filesMatching(['*.mod.json', "*.mixins.json"]) { + expand(stringProperties) { + escapeBackslash = true + } + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.compilerArgs.add('-Xlint:deprecation') + it.options.release = project.java_version as Integer +} + +java { + targetCompatibility = sourceCompatibility = project.java_version as Integer + withSourcesJar() +} + +jar { + inputs.property "archivesName", project.base.archivesName + + from("LICENSE") { + rename { "${it}_${inputs.properties.archivesName}" } + } +} + +// configure the maven publication +publishing { + publications { + create("mavenJava", MavenPublication) { + artifactId = project.archives_base_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. + // Notice: This block does NOT have the same function as the block in the top level. + // The repositories here will be used for publishing your artifact, not for + // retrieving dependencies. + } +} |
