From 39f5faa8f45f54eeba90bf781f38d855380d4546 Mon Sep 17 00:00:00 2001 From: Thomas Cashman Date: Thu, 16 Nov 2017 19:49:14 +0100 Subject: [PATCH] Zip archive name can now be configured via zipName parameter --- CHANGES | 3 +++ README.md | 4 ++++ build.gradle | 2 +- src/main/groovy/org/mini2Dx/parcl/ParclPlugin.groovy | 12 +++++++++--- src/main/groovy/org/mini2Dx/parcl/domain/App.groovy | 1 + src/main/groovy/org/mini2Dx/parcl/domain/Exe.groovy | 9 +++++---- .../groovy/org/mini2Dx/parcl/domain/Linux.groovy | 11 ++++++----- 7 files changed, 29 insertions(+), 13 deletions(-) diff --git a/CHANGES b/CHANGES index c033b49..9275fe5 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +[1.2.1] +- Zip archive name can now be configured via zipName parameter + [1.2.0] - Added bundleNativeZip task to generate a zip archive of the application diff --git a/README.md b/README.md index 8db533b..baa49c0 100644 --- a/README.md +++ b/README.md @@ -86,6 +86,7 @@ There are several optional configuration parameters for each platform. | Optional Parameter | Description | Example | | ------------- | ------------- | ------------- | +| zipName | Specifies the name for the outputted zip file | zipName = 'my-game-windows.zip' | | vmArgs | Passes JVM options to the application on launch | vmArgs = ["-Xmx1g"] | | appArgs | Passes application arguments to the application on launch | appArgs = ["arg1", "arg2"] | | withJre | Copies your local JRE and bundles it with the application. The value of $JAVA_HOME must be passed as an argument. | withJre("/usr/lib/jvm/java-8-oracle/") | @@ -100,6 +101,7 @@ parcl { vmArgs = ["-Xmx1g"] appArgs = ["arg1", "arg2"] exeName = "myapplication" + zipName = 'my-game-windows.zip' withJre("C:\\Program Files (x86)\\Java\\jdk1.8.0_25\\jre") } @@ -113,6 +115,7 @@ parcl { displayName = 'My Application' identifier = 'com.example.my.apple.identifier' copyright = 'Copyright 2015 Your Name Here' + zipName = 'my-game-mac.zip' withJre("/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home") } @@ -122,6 +125,7 @@ parcl { appArgs = ["arg1", "arg2"] binName = "myapplication" preferSystemJre = true + zipName = 'my-game-linux.zip' withJre("/usr/lib/jvm/java-8-oracle/") } diff --git a/build.gradle b/build.gradle index 8f25447..91d2978 100644 --- a/build.gradle +++ b/build.gradle @@ -34,7 +34,7 @@ sourceCompatibility = 1.7 targetCompatibility = 1.7 group = 'org.mini2Dx' -version = '1.2.0' +version = '1.2.1-SNAPSHOT' description = 'Gradle plugin for bundling your Java application for distribution on Windows, Mac and Linux' dependencies { diff --git a/src/main/groovy/org/mini2Dx/parcl/ParclPlugin.groovy b/src/main/groovy/org/mini2Dx/parcl/ParclPlugin.groovy index d3def63..429cdc2 100644 --- a/src/main/groovy/org/mini2Dx/parcl/ParclPlugin.groovy +++ b/src/main/groovy/org/mini2Dx/parcl/ParclPlugin.groovy @@ -62,7 +62,9 @@ class ParclPlugin implements Plugin { from "${project.buildDir}/windows/" include '**/*' conventionMapping.archiveName = { - project.getExtensions().findByName('parcl').exe.exeName + ".zip" + project.getExtensions().findByName('parcl').exe.zipName != null ? + project.getExtensions().findByName('parcl').exe.zipName : + project.getExtensions().findByName('parcl').exe.exeName + "-windows.zip" } destinationDir(project.file('build')) } @@ -76,7 +78,9 @@ class ParclPlugin implements Plugin { from "${project.buildDir}/mac/" include '**/*' conventionMapping.archiveName = { - project.getExtensions().findByName('parcl').app.appName + ".zip" + project.getExtensions().findByName('parcl').app.zipName != null ? + project.getExtensions().findByName('parcl').app.zipName : + project.getExtensions().findByName('parcl').app.appName + "-mac.zip" } destinationDir(project.file('build')) } @@ -90,7 +94,9 @@ class ParclPlugin implements Plugin { from "${project.buildDir}/linux/" include '**/*' conventionMapping.archiveName = { - project.getExtensions().findByName('parcl').linux.binName + ".zip" + project.getExtensions().findByName('parcl').linux.zipName != null ? + project.getExtensions().findByName('parcl').linux.zipName : + project.getExtensions().findByName('parcl').linux.binName + "-linux.zip" } destinationDir(project.file('build')) } diff --git a/src/main/groovy/org/mini2Dx/parcl/domain/App.groovy b/src/main/groovy/org/mini2Dx/parcl/domain/App.groovy index bc95479..ab5c8c6 100644 --- a/src/main/groovy/org/mini2Dx/parcl/domain/App.groovy +++ b/src/main/groovy/org/mini2Dx/parcl/domain/App.groovy @@ -39,6 +39,7 @@ class App { String identifier String copyright String javaHome; + String zipName; void withJre(String javaHome) { this.javaHome = javaHome diff --git a/src/main/groovy/org/mini2Dx/parcl/domain/Exe.groovy b/src/main/groovy/org/mini2Dx/parcl/domain/Exe.groovy index 965a410..25eb822 100644 --- a/src/main/groovy/org/mini2Dx/parcl/domain/Exe.groovy +++ b/src/main/groovy/org/mini2Dx/parcl/domain/Exe.groovy @@ -30,10 +30,11 @@ import java.util.List; * Configuration for Windows packages */ class Exe { - List vmArgs - List appArgs - String exeName - String javaHome + List vmArgs; + List appArgs; + String exeName; + String javaHome; + String zipName; void withJre(String javaHome) { this.javaHome = javaHome diff --git a/src/main/groovy/org/mini2Dx/parcl/domain/Linux.groovy b/src/main/groovy/org/mini2Dx/parcl/domain/Linux.groovy index 63757e8..abdd1e1 100644 --- a/src/main/groovy/org/mini2Dx/parcl/domain/Linux.groovy +++ b/src/main/groovy/org/mini2Dx/parcl/domain/Linux.groovy @@ -30,11 +30,12 @@ import java.util.List; * Configuration for Linux binaries */ class Linux { - List vmArgs - List appArgs - String binName - String javaHome - boolean preferSystemJre + List vmArgs; + List appArgs; + String binName; + String javaHome; + boolean preferSystemJre; + String zipName; void withJre(String javaHome) { this.javaHome = javaHome