From 6cab82e2802dce2639fe7a8bbf08e66c84957642 Mon Sep 17 00:00:00 2001 From: Cedric Beust Date: Thu, 27 Apr 2017 13:32:21 -0700 Subject: [PATCH] Refactor. --- .../src/main/kotlin/com/beust/kobalt/JarGenerator.kt | 3 ++- .../src/main/kotlin/com/beust/kobalt/archive/MetaArchive.kt | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/JarGenerator.kt b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/JarGenerator.kt index 9572a622..19bb52c6 100644 --- a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/JarGenerator.kt +++ b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/JarGenerator.kt @@ -3,6 +3,7 @@ package com.beust.kobalt import com.beust.kobalt.api.KobaltContext import com.beust.kobalt.api.Project import com.beust.kobalt.archive.Archives +import com.beust.kobalt.archive.MetaArchive import com.beust.kobalt.archive.Zip import com.beust.kobalt.maven.DependencyManager import com.beust.kobalt.maven.aether.Scope @@ -141,7 +142,7 @@ class JarGenerator @Inject constructor(val dependencyManager: DependencyManager) val allFiles = includedFiles.flatMap { file -> file.allFromFiles(project.directory).map { file.from(it.path) } } - val manifestFiles = allFiles.filter { it.path.contains("META-INF/MANIFEST.MF") } + val manifestFiles = allFiles.filter { it.path.contains(MetaArchive.MANIFEST_MF) } return if (manifestFiles.any()) manifestFiles[0] else null } diff --git a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/archive/MetaArchive.kt b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/archive/MetaArchive.kt index 539ce238..d65f68f0 100644 --- a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/archive/MetaArchive.kt +++ b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/archive/MetaArchive.kt @@ -18,6 +18,10 @@ import org.apache.commons.compress.archivers.zip.ZipFile as ApacheZipFile * Uses ZipArchiveOutputStream for fast inclusion of expanded jar files. */ class MetaArchive(outputFile: File, val manifest: Manifest?) : Closeable { + companion object { + val MANIFEST_MF = "/META-INF/MANIFEST.MF" + } + private val zos = ZipArchiveOutputStream(outputFile).apply { encoding = "UTF-8" } @@ -60,7 +64,7 @@ class MetaArchive(outputFile: File, val manifest: Manifest?) : Closeable { manifest.write(fos) } - val entry = zos.createArchiveEntry(manifestFile, "META-INF/MANIFEST.MF") + val entry = zos.createArchiveEntry(manifestFile, MetaArchive.MANIFEST_MF) addEntry(entry, FileInputStream(manifestFile)) } }