Skip to content

Commit

Permalink
download JRES instead of packaging them
Browse files Browse the repository at this point in the history
  • Loading branch information
garretreichenbach committed Dec 9, 2023
1 parent 65d1f5a commit 70781da
Show file tree
Hide file tree
Showing 8 changed files with 55 additions and 60 deletions.
42 changes: 0 additions & 42 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -46,39 +46,7 @@ tasks.register('all_jar', Jar) {
dependsOn('mac_jar')
}

task copyJRE8Win(type: Copy) {
from './java/windows/jre8/jre8.zip'
into './release-builds/StarMade Launcher-win32-ia32/'
}

task copyJRE18Win(type: Copy) {
from './java/windows/jre18/jre18.zip'
into './release-builds/StarMade Launcher-win32-ia32/'
}

task copyJRE8Linux(type: Copy) {
from './java/linux/jre8/jre8.tar.gz'
into './release-builds/StarMade Launcher-linux-x64/'
}

task copyJRE18Linux(type: Copy) {
from './java/linux/jre18/jre18.tar.gz'
into './release-builds/StarMade Launcher-linux-x64/'
}

task copyJRE8Mac(type: Copy) {
from './java/mac/jre8/jre8.tar.gz'
into './release-builds/StarMade Launcher-darwin-x64/'
}

task copyJRE18Mac(type: Copy) {
from './java/mac/jre18/jre18.tar.gz'
into './release-builds/StarMade Launcher-darwin-x64/'
}

tasks.register('win_jar', Jar) {
dependsOn('copyJRE8Win')
dependsOn('copyJRE18Win')
manifest {
attributes 'Main-Class': 'smlauncher.StarMadeLauncher'
}
Expand All @@ -96,8 +64,6 @@ tasks.register('win_jar', Jar) {
}

tasks.register('linux_jar', Jar) {
dependsOn('copyJRE8Linux')
dependsOn('copyJRE18Linux')
manifest {
attributes 'Main-Class': 'smlauncher.StarMadeLauncher'
}
Expand All @@ -115,8 +81,6 @@ tasks.register('linux_jar', Jar) {
}

tasks.register('mac_jar', Jar) {
dependsOn('copyJRE8Mac')
dependsOn('copyJRE18Mac')
manifest {
attributes 'Main-Class': 'smlauncher.StarMadeLauncher'
}
Expand All @@ -128,12 +92,6 @@ tasks.register('mac_jar', Jar) {
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
}
from(sourceSets.main.output)
from('java/mac/jre8.tar.gz') {
into 'jre8'
}
from('java/mac/jre18.tar.gz') {
into 'jre18'
}
from('resources/Updater.jar') {
into 'Updater.jar'
}
Expand Down
3 changes: 0 additions & 3 deletions java/linux/jre18/jre18.tar.gz

This file was deleted.

3 changes: 0 additions & 3 deletions java/linux/jre8/jre8.tar.gz

This file was deleted.

3 changes: 0 additions & 3 deletions java/mac/jre18/jre18.tar.gz

This file was deleted.

3 changes: 0 additions & 3 deletions java/mac/jre8/jre8.tar.gz

This file was deleted.

3 changes: 0 additions & 3 deletions java/windows/jre18/jre18.zip

This file was deleted.

3 changes: 0 additions & 3 deletions java/windows/jre8/jre8.zip

This file was deleted.

55 changes: 55 additions & 0 deletions src/main/java/smlauncher/StarMadeLauncher.java
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,21 @@ public StarMadeLauncher() {
exception.printStackTrace();
}
deleteUpdaterJar();
if(!checkForJREs()) {
try {

//Download JREs from links
String java8URL = getJava8URL();
String java18URL = getJava18URL();
downloadJava(java8URL, "JRE8.zip");
downloadJava(java18URL, "JRE18.zip");
unzipJava(8);
unzipJava(18);
} catch(Exception exception) {
exception.printStackTrace();
JOptionPane.showMessageDialog(this, "Failed to download Java Runtimes for first time setup. Please make sure you have a stable internet connection and try again.", "Error", JOptionPane.ERROR_MESSAGE);
}
}
setTitle("StarMade Launcher [" + LAUNCHER_VERSION + "]");
setBounds(100, 100, 800, 550);
setMinimumSize(new Dimension(800, 550));
Expand All @@ -142,6 +157,24 @@ public StarMadeLauncher() {
setVisible(true);
}

private String getJava8URL() {
String os = System.getProperty("os.name").toLowerCase();
if(os.contains("win")) return "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u392-b08/OpenJDK8U-jre_x64_windows_hotspot_8u392b08.zip";
else if(os.contains("mac")) return "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u392-b08/OpenJDK8U-jre_x64_mac_hotspot_8u392b08.tar.gz";
else return "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u392-b08/OpenJDK8U-jre_x64_linux_hotspot_8u392b08.tar.gz";
}

private String getJava18URL() {
String os = System.getProperty("os.name").toLowerCase();
if(os.contains("win")) return "https://github.com/adoptium/temurin18-binaries/releases/download/jdk-18.0.2.1%2B1/OpenJDK18U-jre_x64_windows_hotspot_18.0.2.1_1.zip";
else if(os.contains("mac")) return "https://github.com/adoptium/temurin18-binaries/releases/download/jdk-18.0.2.1%2B1/OpenJDK18U-jre_x64_mac_hotspot_18.0.2.1_1.tar.gz";
else return "https://github.com/adoptium/temurin18-binaries/releases/download/jdk-18.0.2.1%2B1/OpenJDK18U-jre_x64_linux_hotspot_18.0.2.1_1.tar.gz";
}

private boolean checkForJREs() {
return (new File(getJava8Path()).exists() && new File(getJava18Path()).exists());
}

private static void deleteUpdaterJar() {
File updaterJar = new File("Updater.jar");
if(updaterJar.exists()) updaterJar.delete();
Expand Down Expand Up @@ -1117,12 +1150,34 @@ private void unzipJava(int jre) throws Exception {
if(!jreFolder.exists()) {
ZipFile zipFile = new ZipFile("./jre" + jre + ".zip");
unzip(zipFile, new File("./"));
//Delete the zip file
zipFile.close();
File zip = new File("./jre" + jre + ".zip");
if(zip.exists()) zip.delete();
//Rename the folder to JRE8
for(File file : Objects.requireNonNull(new File("./").listFiles())) {
if(file.getName().startsWith("jdk8") || file.getName().startsWith("jdk-18")) {
file.renameTo(new File("./jre" + jre));
break;
}
}
}
} else {
File jreFolder = new File("./jre" + jre);
if(!jreFolder.exists()) {
ZipFile zipFile = new ZipFile("./jre" + jre + ".tar.gz");
unzip(zipFile, new File("./"));
//Delete the zip file
zipFile.close();
File zip = new File("./jre" + jre + ".tar.gz");
if(zip.exists()) zip.delete();
//Rename the folder to JRE8
for(File file : Objects.requireNonNull(new File("./").listFiles())) {
if(file.getName().startsWith("jdk8") || file.getName().startsWith("jdk-18")) {
file.renameTo(new File("./jre" + jre));
break;
}
}
}
}
}
Expand Down

0 comments on commit 70781da

Please sign in to comment.