Explorar el Código

Add version info in `META-INF/MANIFEST.MF` (#1355)

Karlatemp hace 4 años
padre
commit
28c2309fbb
Se han modificado 2 ficheros con 14 adiciones y 0 borrados
  1. 1 0
      build.gradle.kts
  2. 13 0
      buildSrc/src/main/kotlin/ProjectConfigure.kt

+ 1 - 0
build.gradle.kts

@@ -101,6 +101,7 @@ allprojects {
         if (isKotlinJvmProject) {
             configureFlattenSourceSets()
         }
+        configureJarManifest()
     }
 }
 

+ 13 - 0
buildSrc/src/main/kotlin/ProjectConfigure.kt

@@ -14,6 +14,7 @@ import org.gradle.api.Project
 import org.gradle.api.plugins.JavaPluginExtension
 import org.gradle.api.tasks.compile.JavaCompile
 import org.gradle.api.tasks.testing.Test
+import org.gradle.api.tasks.bundling.Jar
 import org.gradle.kotlin.dsl.*
 import org.jetbrains.kotlin.gradle.dsl.*
 import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
@@ -182,6 +183,18 @@ fun Project.configureFlattenSourceSets() {
     }
 }
 
+fun Project.configureJarManifest() {
+    this.tasks.withType<Jar> {
+        manifest {
+            attributes(
+                "Implementation-Vendor" to "Mamoe Technologies",
+                "Implementation-Title" to this@configureJarManifest.name.toString(),
+                "Implementation-Version" to this@configureJarManifest.version.toString()
+            )
+        }
+    }
+}
+
 inline fun <reified T> Any?.safeAs(): T? {
     return this as? T
 }