fix wrong recognized java platform.

This commit is contained in:
huanghongxun 2015-07-29 23:18:05 +08:00
parent e4335cf1f0
commit 7e781dd24c
5 changed files with 59 additions and 41 deletions

View File

@ -1235,11 +1235,11 @@ org.jackhuang.hellominecraft.launcher.launch.AbstractMinecraftLoader -> org.jack
org.jackhuang.hellominecraft.launcher.utils.auth.UserProfileProvider lr -> a
java.io.File gameDir -> b
org.jackhuang.hellominecraft.launcher.launch.IMinecraftProvider provider -> a
60:128:void makeHeadCommand(java.util.List) -> a
132:163:java.util.List makeLaunchingCommand() -> a
60:133:void makeHeadCommand(java.util.List) -> a
137:168:java.util.List makeLaunchingCommand() -> a
void makeSelf(java.util.List) -> b
179:179:void appendJVMArgs(java.util.List) -> c
182:182:org.jackhuang.hellominecraft.launcher.settings.Profile getUserVersion() -> a
184:184:void appendJVMArgs(java.util.List) -> c
187:187:org.jackhuang.hellominecraft.launcher.settings.Profile getUserVersion() -> a
org.jackhuang.hellominecraft.launcher.launch.DefaultGameLauncher -> org.jackhuang.hellominecraft.launcher.h:
46:69:void register() -> a
61:67:boolean lambda$register$3(java.lang.Object,org.jackhuang.hellominecraft.launcher.launch.GameLauncher$DecompressLibraryJob) -> b
@ -1333,12 +1333,12 @@ org.jackhuang.hellominecraft.launcher.launch.LibraryDownloadTask -> org.jackhuan
boolean shouldContinue -> a
boolean aborted -> b
int size -> a
56:66:boolean executeTask() -> a
76:154:boolean download(java.net.URL,java.io.File) -> a
159:199:void unpackLibrary(java.io.File,java.io.File) -> a
203:219:void closeFiles() -> a
223:225:boolean abort() -> b
230:230:java.lang.String getInfo() -> a
56:76:boolean executeTask() -> a
86:167:boolean download(java.net.URL,java.io.File) -> a
172:212:void unpackLibrary(java.io.File,java.io.File) -> a
216:232:void closeFiles() -> a
236:238:boolean abort() -> b
243:243:java.lang.String getInfo() -> a
org.jackhuang.hellominecraft.launcher.launch.MinecraftCrashAdvicer -> org.jackhuang.hellominecraft.launcher.u:
29:29:java.lang.String getAdvice(java.lang.String) -> a
33:52:java.lang.String getAdvice(java.lang.String,boolean) -> a
@ -3261,22 +3261,22 @@ org.jackhuang.hellominecraft.tasks.TaskList -> org.jackhuang.hellominecraft.laun
boolean shouldContinue -> a
java.util.Set threadPool -> a
java.util.Set taskPool -> b
45:48:void clean() -> a
51:52:void addAllDoneListener(org.jackhuang.hellominecraft.utils.functions.NonConsumer) -> a
55:56:void addTaskListener(org.jackhuang.hellominecraft.tasks.DoingDoneListener) -> a
59:61:void addTask(org.jackhuang.hellominecraft.tasks.Task) -> a
64:64:int taskCount() -> a
90:109:void processTasks(java.util.Collection) -> a
112:136:void executeTask(org.jackhuang.hellominecraft.tasks.Task) -> b
140:148:void run() -> run
151:151:boolean isEmpty() -> a
155:163:void abort() -> b
45:47:void clean() -> a
50:51:void addAllDoneListener(org.jackhuang.hellominecraft.utils.functions.NonConsumer) -> a
54:55:void addTaskListener(org.jackhuang.hellominecraft.tasks.DoingDoneListener) -> a
58:59:void addTask(org.jackhuang.hellominecraft.tasks.Task) -> a
62:62:int taskCount() -> a
88:107:void processTasks(java.util.Collection) -> a
110:134:void executeTask(org.jackhuang.hellominecraft.tasks.Task) -> b
138:147:void run() -> run
150:150:boolean isEmpty() -> a
154:162:void abort() -> b
32:32:void access$000(org.jackhuang.hellominecraft.tasks.TaskList,org.jackhuang.hellominecraft.tasks.Task) -> a
org.jackhuang.hellominecraft.tasks.TaskList$InvokeThread -> org.jackhuang.hellominecraft.launcher.dm:
org.jackhuang.hellominecraft.tasks.Task task -> a
java.util.Set s -> a
org.jackhuang.hellominecraft.tasks.TaskList this$0 -> a
79:82:void run() -> run
77:80:void run() -> run
org.jackhuang.hellominecraft.tasks.TaskRunnable -> org.jackhuang.hellominecraft.launcher.dn:
java.lang.Runnable r -> a
35:39:boolean executeTask() -> a
@ -3403,12 +3403,12 @@ org.jackhuang.hellominecraft.tasks.download.FileDownloadTask -> org.jackhuang.he
java.util.ArrayList al -> a
103:103:java.lang.String getUrl() -> b
112:128:void closeFiles() -> a
133:212:boolean executeTask() -> a
216:217:void download(java.lang.String,java.lang.String,org.jackhuang.hellominecraft.tasks.download.DownloadListener) -> a
221:223:boolean abort() -> b
228:228:java.lang.String getInfo() -> a
233:233:java.io.File getResult() -> a
240:241:org.jackhuang.hellominecraft.tasks.Task registerPreviousResult(org.jackhuang.hellominecraft.tasks.communication.PreviousResult) -> a
133:215:boolean executeTask() -> a
219:220:void download(java.lang.String,java.lang.String,org.jackhuang.hellominecraft.tasks.download.DownloadListener) -> a
224:226:boolean abort() -> b
231:231:java.lang.String getInfo() -> a
236:236:java.io.File getResult() -> a
243:244:org.jackhuang.hellominecraft.tasks.Task registerPreviousResult(org.jackhuang.hellominecraft.tasks.communication.PreviousResult) -> a
44:44:java.lang.Object getResult() -> a
60:60:boolean lambda$static$5(java.lang.String,javax.net.ssl.SSLSession) -> b
boolean access$lambda$0(java.lang.String,javax.net.ssl.SSLSession) -> a
@ -3832,9 +3832,9 @@ org.jackhuang.hellominecraft.utils.system.JdkVersion -> org.jackhuang.hellominec
131:131:java.lang.String getJavaVersion() -> c
149:149:int getMajorJavaVersion() -> b
153:154:boolean isJava64Bit() -> a
160:196:org.jackhuang.hellominecraft.utils.system.JdkVersion getJavaVersionFromExecutable(java.lang.String) -> a
200:202:void write(java.io.File) -> a
205:205:boolean isEarlyAccess() -> b
160:186:org.jackhuang.hellominecraft.utils.system.JdkVersion getJavaVersionFromExecutable(java.lang.String) -> a
190:192:void write(java.io.File) -> a
195:195:boolean isEarlyAccess() -> b
org.jackhuang.hellominecraft.utils.system.MessageBox -> org.jackhuang.hellominecraft.launcher.ex:
java.lang.String Title -> a
int DEFAULT_OPTION -> a

View File

@ -87,6 +87,12 @@ public abstract class AbstractMinecraftLoader implements IMinecraftLoader {
res.add("-Xmn128m");
}
if (jv != null) {
HMCLog.log("Java Version: " + jv.getVersion());
HMCLog.log("Java Platform: " + jv.getPlatform().getBit());
}
HMCLog.log("System Platform: " + Platform.getPlatform().getBit());
if (jv != null && jv.getPlatform() == Platform.BIT_32 && Platform.getPlatform() == Platform.BIT_64)
MessageBox.Show(C.i18n("advice.os64butjdk32"));
@ -106,8 +112,7 @@ public abstract class AbstractMinecraftLoader implements IMinecraftLoader {
}
if (!StrUtils.isBlank(v.getPermSize()) && !v.isNoJVMArgs())
if (jv != null && jv.getParsedVersion() >= JdkVersion.JAVA_18);
else res.add("-XX:MaxPermSize=" + v.getPermSize() + "m");
if (jv != null && jv.getParsedVersion() >= JdkVersion.JAVA_18); else res.add("-XX:MaxPermSize=" + v.getPermSize() + "m");
if (!v.isNoJVMArgs()) appendJVMArgs(res);

View File

@ -49,16 +49,26 @@ public class LibraryDownloadTask extends Task {
public LibraryDownloadTask(GameLauncher.DownloadLibraryJob job) {
this.job = job;
}
@Override
public boolean executeTask() {
try {
File packFile = new File(job.path.getParentFile(), job.path.getName() + ".pack.xz");
if (job.url.contains("typesafe") && download(new URL(job.url + ".pack.xz"), packFile)) {
if (job.name.contains("typesafe") && download(new URL(job.url + ".pack.xz"), packFile)) {
unpackLibrary(job.path, packFile);
packFile.delete();
return true;
} else {
if (job.name.startsWith("net.minecraftforge:forge:")) {
String[] s = job.name.split(":");
if (s.length == 3)
job.url = "http://files.minecraftforge.net/maven/net/minecraftforge/forge/" + s[2] + "/forge-" + s[2] + "-universal.jar";
}
if (job.name.startsWith("com.mumfrey:liteloader:")) {
String[] s = job.name.split(":");
if (s.length == 3 && s[2].length() > 3)
job.url = "http://dl.liteloader.com/versions/com/mumfrey/liteloader/" + s[2].substring(0, s[2].length() - 3) + "/liteloader-" + s[2] + ".jar";
}
return download(new URL(job.url), job.path);
}
} catch (Exception ex) {
@ -141,7 +151,10 @@ public class LibraryDownloadTask extends Task {
ppl.setProgress(this, downloaded, size);
}
closeFiles();
tempFile.renameTo(filePath);
if (aborted)
tempFile.delete();
else
tempFile.renameTo(filePath);
if (ppl != null)
ppl.onProgressProviderDone(this);
return true;
@ -156,7 +169,7 @@ public class LibraryDownloadTask extends Task {
public static void unpackLibrary(File output, File input)
throws IOException {
HMCLog.log("Unpacking " + output);
HMCLog.log("Unpacking " + input);
if (output.exists())
output.delete();
@ -186,9 +199,9 @@ public class LibraryDownloadTask extends Task {
System.gc();
try (FileOutputStream jarBytes = new FileOutputStream(output); JarOutputStream jos = new JarOutputStream(jarBytes)) {
Pack200.newUnpacker().unpack(temp, jos);
JarEntry checksumsFile = new JarEntry("checksums.sha1");
checksumsFile.setTime(0L);
jos.putNextEntry(checksumsFile);

View File

@ -81,9 +81,9 @@ public class ForgeInstaller extends Task {
FileUtils.copyFile(new File(from, profile.install.minecraft + ".jar"),
new File(to, profile.install.target + ".jar"));
HMCLog.log("Creating new version profile..." + profile.install.target + ".json");
for (MinecraftLibrary library : profile.versionInfo.libraries)
/*for (MinecraftLibrary library : profile.versionInfo.libraries)
if (library.name.startsWith("net.minecraftforge:forge:"))
library.url = installerVersion.universal;
library.url = installerVersion.universal;*/
FileUtils.write(new File(to, profile.install.target + ".json"), C.gsonPrettyPrinting.toJson(profile.versionInfo));
HMCLog.log("Extracting universal forge pack..." + profile.install.filePath);

View File

@ -65,7 +65,7 @@ public class LiteLoaderInstaller extends Task implements PreviousResultRegistrat
mv.libraries = new ArrayList(Arrays.asList(version.libraries));
MinecraftLibrary ml = new MinecraftLibrary("com.mumfrey:liteloader:" + version.selfVersion);
ml.url = "http://dl.liteloader.com/versions/com/mumfrey/liteloader/" + version.mcVersion + "/liteloader-" + version.selfVersion + ".jar";
//ml.url = "http://dl.liteloader.com/versions/com/mumfrey/liteloader/" + version.mcVersion + "/liteloader-" + version.selfVersion + ".jar";
mv.libraries.add(0, ml);
FileUtils.copyFile(installer, new File(profile.getCanonicalGameDir(), "libraries/com/mumfrey/liteloader/" + version.selfVersion + "/liteloader-" + version.selfVersion + ".jar"));