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