From c1baa31eed1dec2425d42de726fd0cf686c95ae1 Mon Sep 17 00:00:00 2001 From: Aria Moradi Date: Tue, 18 May 2021 21:31:25 +0430 Subject: [PATCH] the new and simple way of packaging windows --- ...debug.bat => Tachidesk Debug Launcher.bat} | 0 scripts/resources/Tachidesk Launcher.bat | 1 + scripts/resources/Tachidesk Launcher.c | 5 +++ scripts/resources/Tachidesk Launcher.exe | Bin 0 -> 141310 bytes scripts/resources/Tachidesk.bat | 1 - scripts/resources/readme.md | 3 ++ scripts/windows-bundler.sh | 7 ++-- server/build.gradle.kts | 32 +++++++++--------- 8 files changed, 29 insertions(+), 20 deletions(-) rename scripts/resources/{Tachidesk-debug.bat => Tachidesk Debug Launcher.bat} (100%) create mode 100644 scripts/resources/Tachidesk Launcher.bat create mode 100644 scripts/resources/Tachidesk Launcher.c create mode 100644 scripts/resources/Tachidesk Launcher.exe delete mode 100644 scripts/resources/Tachidesk.bat create mode 100644 scripts/resources/readme.md diff --git a/scripts/resources/Tachidesk-debug.bat b/scripts/resources/Tachidesk Debug Launcher.bat similarity index 100% rename from scripts/resources/Tachidesk-debug.bat rename to scripts/resources/Tachidesk Debug Launcher.bat diff --git a/scripts/resources/Tachidesk Launcher.bat b/scripts/resources/Tachidesk Launcher.bat new file mode 100644 index 0000000..45da249 --- /dev/null +++ b/scripts/resources/Tachidesk Launcher.bat @@ -0,0 +1 @@ +start "" jre/bin/javaw -jar Tachidesk.jar \ No newline at end of file diff --git a/scripts/resources/Tachidesk Launcher.c b/scripts/resources/Tachidesk Launcher.c new file mode 100644 index 0000000..8d941d9 --- /dev/null +++ b/scripts/resources/Tachidesk Launcher.c @@ -0,0 +1,5 @@ +#include + +int main() { + system("start jre\\bin\\javaw -jar Tachidesk.jar"); +} diff --git a/scripts/resources/Tachidesk Launcher.exe b/scripts/resources/Tachidesk Launcher.exe new file mode 100644 index 0000000000000000000000000000000000000000..92476beda9ac13ee2ba2b6956c99a2e7cabf9a1a GIT binary patch literal 141310 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 literal 0 HcmV?d00001 diff --git a/scripts/resources/Tachidesk.bat b/scripts/resources/Tachidesk.bat deleted file mode 100644 index 76b616a..0000000 --- a/scripts/resources/Tachidesk.bat +++ /dev/null @@ -1 +0,0 @@ -start "" "jre/bin/javaw -jar Tachidesk.jar" \ No newline at end of file diff --git a/scripts/resources/readme.md b/scripts/resources/readme.md new file mode 100644 index 0000000..4c8dac9 --- /dev/null +++ b/scripts/resources/readme.md @@ -0,0 +1,3 @@ +# Building `Tachidesk Launcher.exe` +1. compile `Tachidesk Launcher.c` statically using GCC MinGW: `gcc -o "Tachidesk Launcher.exe" "Tachidesk Launcher.c"` +2. Add `server/src/main/resources/icon/faviconlogo.ico` into the exe with `rcedit` from the electron project: `rcedit "Tachidesk Launcher.exe" --set-icon "faviconlogo.ico"` diff --git a/scripts/windows-bundler.sh b/scripts/windows-bundler.sh index f969849..e46352a 100755 --- a/scripts/windows-bundler.sh +++ b/scripts/windows-bundler.sh @@ -27,10 +27,11 @@ mv jdk8u292-b10-jre $release_name/jre cp $jar $release_name/Tachidesk.jar -cp resources/Tachidesk.bat $release_name -cp resources/Tachidesk-debug.bat $release_name +cp "resources/Tachidesk Launcher.exe" $release_name +cp "resources/Tachidesk Launcher.bat" $release_name +cp "resources/Tachidesk Debug Launcher.bat" $release_name zip_name=$release_name.zip zip -9 -r $zip_name $release_name -cp $zip_name ../server/build/ +mv $zip_name ../server/build/ diff --git a/server/build.gradle.kts b/server/build.gradle.kts index 3bf6725..9d48b7a 100644 --- a/server/build.gradle.kts +++ b/server/build.gradle.kts @@ -126,18 +126,8 @@ buildConfig { buildConfigField("boolean", "debug", project.hasProperty("debugApp").toString()) } -launch4j { //used for windows - mainClassName = MainClass - bundledJrePath = "jre" - bundledJre64Bit = true - jreMinVersion = "8" - outputDir = "${rootProject.name}-$tachideskVersion-$tachideskRevision-win64" - icon = "${projectDir}/src/main/resources/icon/faviconlogo.ico" - jar = "${projectDir}/build/${rootProject.name}-$tachideskVersion-$tachideskRevision.jar" -} - tasks { - jar { + shadowJar { manifest { attributes( mapOf( @@ -149,9 +139,6 @@ tasks { ) ) } - } - shadowJar { - manifest.inheritFrom(jar.get().manifest) //will make your shadowJar (produced by jar task) runnable archiveBaseName.set(rootProject.name) archiveVersion.set(tachideskVersion) archiveClassifier.set(tachideskRevision) @@ -168,8 +155,8 @@ tasks { test { useJUnit() } - - + + withType { destinationDirectory.set(File("$rootDir/server/build")) dependsOn("formatKotlin", "lintKotlin") @@ -193,3 +180,16 @@ tasks { } } +launch4j { //used for windows + mainClassName = MainClass + bundledJrePath = "jre" + bundledJre64Bit = true + dontWrapJar = true + outputDir = "${rootProject.name}-$tachideskVersion-$tachideskRevision-win64" + icon = "${projectDir}/src/main/resources/icon/faviconlogo.ico" + jar = "Tachidesk.jar" + libraryDir = "" + copyConfigurable = "false" +} + +