summaryrefslogtreecommitdiff
path: root/forgewrapper/build.gradle
diff options
context:
space:
mode:
Diffstat (limited to 'forgewrapper/build.gradle')
-rw-r--r--forgewrapper/build.gradle90
1 files changed, 90 insertions, 0 deletions
diff --git a/forgewrapper/build.gradle b/forgewrapper/build.gradle
new file mode 100644
index 0000000000..244e0555ae
--- /dev/null
+++ b/forgewrapper/build.gradle
@@ -0,0 +1,90 @@
+import java.text.SimpleDateFormat
+
+plugins {
+ id "java"
+ id "eclipse"
+ id "maven-publish"
+}
+
+sourceCompatibility = targetCompatibility = 1.8
+compileJava {
+ sourceCompatibility = targetCompatibility = 1.8
+}
+
+version = "${fw_version}${-> getVersionSuffix()}"
+group = "io.github.zekerzhayard"
+archivesBaseName = rootProject.name
+
+configurations {
+ multirelase {
+ implementation.extendsFrom multirelase
+ }
+}
+
+repositories {
+ mavenCentral()
+ maven {
+ name = "forge"
+ url = "https://maven.minecraftforge.net/"
+ }
+}
+
+dependencies {
+ compileOnly "com.google.code.gson:gson:2.8.7"
+ compileOnly "cpw.mods:modlauncher:8.0.9"
+ compileOnly "net.minecraftforge:installer:2.2.7"
+ compileOnly "net.sf.jopt-simple:jopt-simple:5.0.4"
+
+ multirelase project(":jigsaw")
+}
+
+java {
+ withSourcesJar()
+}
+
+jar {
+ manifest.attributes([
+ "Specification-Title": "${project.name}",
+ "Specification-Vendor": "ZekerZhayard",
+ "Specification-Version": "${project.version}".split("-")[0],
+ "Implementation-Title": "${project.name}",
+ "Implementation-Version": "${project.version}",
+ "Implementation-Vendor" :"ZekerZhayard",
+ "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"),
+ "Automatic-Module-Name": "${project.group}.${project.archivesBaseName}".toString().toLowerCase(),
+ "Multi-Release": "true",
+ "GitCommit": String.valueOf(System.getenv("GITHUB_SHA"))
+ ])
+
+ into "META-INF/versions/9", {
+ from configurations.multirelase.files.collect {
+ zipTree(it)
+ }
+ exclude "META-INF/**"
+ }
+}
+
+publishing {
+ publications {
+ maven(MavenPublication) {
+ groupId "${project.group}"
+ artifactId "${project.archivesBaseName}"
+ version "${project.version}"
+
+ from components.java
+ }
+ }
+ repositories {
+ maven {
+ url = layout.buildDirectory.dir("maven")
+ }
+ }
+}
+tasks.publish.dependsOn build
+
+static String getVersionSuffix() {
+ if (System.getenv("IS_PUBLICATION") != null || System.getenv("GITHUB_ACTIONS") == "true")
+ return new SimpleDateFormat("-yyyy-MM-dd").format(new Date())
+
+ return "-LOCAL"
+}