From e15e4c1e35462a54ab7ef39c902417577c20bc3a Mon Sep 17 00:00:00 2001 From: Gravit Date: Thu, 20 Dec 2018 22:43:01 +0700 Subject: [PATCH] =?UTF-8?q?=D0=92=D0=BE=D0=B7=D0=BC=D0=BE=D0=B6=D0=BD?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D1=8C=20=D0=BE=D1=82=D0=BA=D0=BB=D1=8E=D1=87?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=BF=D1=80=D0=B5=D0=B4=D1=83=D0=BF=D1=80?= =?UTF-8?q?=D0=B5=D0=B6=D0=B4=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BE=20=D0=BD?= =?UTF-8?q?=D0=B5=D0=B2=D0=B5=D1=80=D0=BD=D0=BE=D0=B9=20=D0=B0=D1=80=D1=85?= =?UTF-8?q?=D0=B8=D1=82=D0=B5=D0=BA=D1=82=D1=83=D1=80=D0=B5=20Java=20?= =?UTF-8?q?=D0=B8=20=D0=9E=D0=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/ru/gravit/launchserver/LaunchServer.java | 2 ++ .../java/ru/gravit/launchserver/binary/JAConfigurator.java | 5 +++++ .../resources/ru/gravit/launchserver/defaults/config.cfg | 1 + .../main/java/ru/gravit/launcher/client/ClientLauncher.java | 2 ++ .../src/main/java/ru/gravit/launcher/AutogenConfig.java | 1 + .../src/main/java/ru/gravit/launcher/LauncherConfig.java | 4 ++++ 6 files changed, 15 insertions(+) diff --git a/LaunchServer/src/main/java/ru/gravit/launchserver/LaunchServer.java b/LaunchServer/src/main/java/ru/gravit/launchserver/LaunchServer.java index a619f2dd..42a0dcb0 100644 --- a/LaunchServer/src/main/java/ru/gravit/launchserver/LaunchServer.java +++ b/LaunchServer/src/main/java/ru/gravit/launchserver/LaunchServer.java @@ -113,6 +113,7 @@ public static final class Config extends ConfigObject { private final StringConfigEntry address; private final String bindAddress; public final LauncherConfig.LauncherEnvironment env; + public final boolean isWarningMissArchJava; private Config(BlockConfigEntry block, Path coredir, LaunchServer server) { super(block); @@ -159,6 +160,7 @@ private Config(BlockConfigEntry block, Path coredir, LaunchServer server) { isUsingWrapper = block.getEntryValue("isUsingWrapper", BooleanConfigEntry.class); isDownloadJava = block.getEntryValue("isDownloadJava", BooleanConfigEntry.class); + isWarningMissArchJava = block.getEntryValue("isWarningMissArchJava", BooleanConfigEntry.class); env = LauncherConfig.LauncherEnvironment.STD; } diff --git a/LaunchServer/src/main/java/ru/gravit/launchserver/binary/JAConfigurator.java b/LaunchServer/src/main/java/ru/gravit/launchserver/binary/JAConfigurator.java index e0bf0464..07a107c8 100644 --- a/LaunchServer/src/main/java/ru/gravit/launchserver/binary/JAConfigurator.java +++ b/LaunchServer/src/main/java/ru/gravit/launchserver/binary/JAConfigurator.java @@ -133,6 +133,11 @@ public void setDownloadJava(boolean b) { body.append(b ? "true" : "false"); body.append(";"); } + public void setWarningMissArchJava(boolean b) { + body.append("this.isWarningMissArchJava = "); + body.append(b ? "true" : "false"); + body.append(";"); + } public ClassPool getPool() { return pool; diff --git a/LaunchServer/src/main/resources/ru/gravit/launchserver/defaults/config.cfg b/LaunchServer/src/main/resources/ru/gravit/launchserver/defaults/config.cfg index 954f8d01..59778166 100644 --- a/LaunchServer/src/main/resources/ru/gravit/launchserver/defaults/config.cfg +++ b/LaunchServer/src/main/resources/ru/gravit/launchserver/defaults/config.cfg @@ -9,6 +9,7 @@ authRejectString: "Вы превысили лимит авторизаций. П isUsingWrapper: true; isDownloadJava: false; +isWarningMissArchJava: true; # White list testers whitelistRejectString: "Вас нет в белом списке"; diff --git a/Launcher/src/main/java/ru/gravit/launcher/client/ClientLauncher.java b/Launcher/src/main/java/ru/gravit/launcher/client/ClientLauncher.java index 1eaba689..cd6b8ce7 100644 --- a/Launcher/src/main/java/ru/gravit/launcher/client/ClientLauncher.java +++ b/Launcher/src/main/java/ru/gravit/launcher/client/ClientLauncher.java @@ -257,6 +257,7 @@ public static void checkJVMBitsAndVersion() { if (JVMHelper.JVM_BITS != JVMHelper.OS_BITS) { String error = String.format("У Вас установлена Java %d, но Ваша система определена как %d. Установите Java правильной разрядности", JVMHelper.JVM_BITS, JVMHelper.OS_BITS); LogHelper.error(error); + if(Launcher.getConfig().isWarningMissArchJava) JOptionPane.showMessageDialog(null, error); } String jvmVersion = JVMHelper.RUNTIME_MXBEAN.getVmVersion(); @@ -264,6 +265,7 @@ public static void checkJVMBitsAndVersion() { if (jvmVersion.startsWith("10.") || jvmVersion.startsWith("9.") || jvmVersion.startsWith("11.")) { String error = String.format("У Вас установлена Java %s. Для правильной работы необходима Java 8", JVMHelper.RUNTIME_MXBEAN.getVmVersion()); LogHelper.error(error); + if(Launcher.getConfig().isWarningMissArchJava) JOptionPane.showMessageDialog(null, error); } } diff --git a/libLauncher/src/main/java/ru/gravit/launcher/AutogenConfig.java b/libLauncher/src/main/java/ru/gravit/launcher/AutogenConfig.java index 371ab370..6213046c 100644 --- a/libLauncher/src/main/java/ru/gravit/launcher/AutogenConfig.java +++ b/libLauncher/src/main/java/ru/gravit/launcher/AutogenConfig.java @@ -10,6 +10,7 @@ public class AutogenConfig { public boolean isDownloadJava; //Выставление этого флага требует модификации runtime части public String secretKeyClient; public int env; + public boolean isWarningMissArchJava; // 0 - Dev (дебаг включен по умолчанию, все сообщения) // 1 - Debug (дебаг включен по умолчанию, основные сообщения) // 2 - Std (дебаг выключен по умолчанию, основные сообщения) diff --git a/libLauncher/src/main/java/ru/gravit/launcher/LauncherConfig.java b/libLauncher/src/main/java/ru/gravit/launcher/LauncherConfig.java index abe997e7..4a243fce 100644 --- a/libLauncher/src/main/java/ru/gravit/launcher/LauncherConfig.java +++ b/libLauncher/src/main/java/ru/gravit/launcher/LauncherConfig.java @@ -44,6 +44,7 @@ public static AutogenConfig getAutogenConfig() { public final boolean isUsingWrapper; public final boolean isDownloadJava; + public final boolean isWarningMissArchJava; @LauncherAPI public LauncherConfig(HInput input) throws IOException, InvalidKeySpecException { @@ -56,6 +57,7 @@ public LauncherConfig(HInput input) throws IOException, InvalidKeySpecException secretKeyClient = config.secretKeyClient; isDownloadJava = config.isDownloadJava; isUsingWrapper = config.isUsingWrapper; + isWarningMissArchJava = config.isWarningMissArchJava; LauncherEnvironment env; if(config.env == 0) env = LauncherEnvironment.DEV; else if(config.env == 1) env = LauncherEnvironment.DEBUG; @@ -96,6 +98,7 @@ public LauncherConfig(String address, int port, RSAPublicKey publicKey, Map