mirror of
https://github.com/SKCraft/Launcher.git
synced 2025-02-26 03:21:51 +01:00
Fix java runtime finder breaking when encountering a bad release file
Rather than blowing up when a release file can't be parsed, log it and move on. Hopefully a better runtime comes along.
This commit is contained in:
parent
5c3768f1cf
commit
1c663e1c04
@ -11,15 +11,18 @@ import com.skcraft.launcher.util.Environment;
|
|||||||
import com.skcraft.launcher.util.EnvironmentParser;
|
import com.skcraft.launcher.util.EnvironmentParser;
|
||||||
import com.skcraft.launcher.util.Platform;
|
import com.skcraft.launcher.util.Platform;
|
||||||
import com.skcraft.launcher.util.WinRegistry;
|
import com.skcraft.launcher.util.WinRegistry;
|
||||||
|
import lombok.extern.java.Log;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.logging.Level;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Finds the best Java runtime to use.
|
* Finds the best Java runtime to use.
|
||||||
*/
|
*/
|
||||||
|
@Log
|
||||||
public final class JavaRuntimeFinder {
|
public final class JavaRuntimeFinder {
|
||||||
|
|
||||||
private JavaRuntimeFinder() {
|
private JavaRuntimeFinder() {
|
||||||
@ -186,7 +189,8 @@ public final class JavaRuntimeFinder {
|
|||||||
|
|
||||||
return releaseDetails.get("JAVA_VERSION");
|
return releaseDetails.get("JAVA_VERSION");
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException("Failed to read release file", e);
|
log.log(Level.WARNING, "Failed to read release file " + releaseFile.getAbsolutePath(), e);
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -83,7 +83,7 @@ public class EnvironmentParser {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private String parseValue() throws IOException {
|
private String parseValue() throws IOException {
|
||||||
StringBuffer buffer = new StringBuffer();
|
StringBuilder buffer = new StringBuilder();
|
||||||
|
|
||||||
while (true) {
|
while (true) {
|
||||||
char c = read();
|
char c = read();
|
||||||
|
Loading…
Reference in New Issue
Block a user