From a52503737ad60ac7808b34ddc2ac1cdd31ea85ef Mon Sep 17 00:00:00 2001 From: vito Date: Tue, 17 Apr 2018 20:41:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=97=A0jira=E4=BB=BB=E5=8A=A1=2010.0=E8=AE=BE?= =?UTF-8?q?=E8=AE=A1=E5=99=A8=E8=B0=83=E8=AF=95=E5=90=AF=E5=8A=A8=E9=97=AE?= =?UTF-8?q?=E9=A2=98=EF=BC=8C=E8=AE=BE=E7=BD=AE=E7=8E=AF=E5=A2=83=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E5=9C=A8=E8=AE=BE=E7=BD=AEbuildfile=E4=B9=8B=E5=90=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/start/module/DesignerStartup.java | 63 ++----------------- .../fr/start/module/PreStartActivator.java | 57 +++++++++++++++-- 2 files changed, 58 insertions(+), 62 deletions(-) diff --git a/designer/src/com/fr/start/module/DesignerStartup.java b/designer/src/com/fr/start/module/DesignerStartup.java index 315ccc7639..dd2b09c538 100644 --- a/designer/src/com/fr/start/module/DesignerStartup.java +++ b/designer/src/com/fr/start/module/DesignerStartup.java @@ -1,11 +1,7 @@ package com.fr.start.module; -import com.fr.design.DesignerEnvManager; -import com.fr.design.utils.DesignUtils; -import com.fr.general.ComparatorUtils; import com.fr.module.Activator; import com.fr.stable.CoreActivator; -import com.fr.stable.ProductConstants; import com.fr.stable.module.ModuleListener; import com.fr.start.Designer; import com.fr.start.EnvSwitcher; @@ -13,26 +9,15 @@ import com.fr.start.ReportSplashPane; import com.fr.start.SplashWindow; import com.fr.startup.activators.BasicActivator; -import java.io.File; - /** * Created by juhaoyu on 2018/1/8. */ public class DesignerStartup extends Activator { - - private static final int MESSAGE_PORT = 51462; - - private static final int DEBUG_PORT = 51463; - + @Override public void start() { - - if (checkMultiStart()) { - return; - } - + startSub(PreStartActivator.class); - //启动基础部分 startSub(BasicActivator.class); //启动画面 @@ -52,53 +37,17 @@ public class DesignerStartup extends Activator { splashWindow.dispose(); startSub(StartFinishActivator.class); } - + private SplashWindow createSplashWindow() { - + ReportSplashPane reportSplashPane = new ReportSplashPane(); SplashWindow splashWindow = new SplashWindow(reportSplashPane); getModule().setSingleton(ModuleListener.class, reportSplashPane.getModuleListener()); return splashWindow; } - - private boolean checkMultiStart() { - - if (isDebug()) { - setDebugEnv(); - } else { - DesignUtils.setPort(getStartPort()); - } - // 如果端口被占用了 说明程序已经运行了一次,也就是说,已经建立一个监听服务器,现在只要给服务器发送命令就好了 - if (DesignUtils.isStarted()) { - DesignUtils.clientSend(getModule().upFindSingleton(StartupArgs.class).get()); - return true; - } - return false; - } - - private int getStartPort() { - - return MESSAGE_PORT; - } - - - //在VM options里加入-Ddebug=true激活 - private boolean isDebug() { - - return ComparatorUtils.equals("true", System.getProperty("debug")); - } - - - //端口改一下,环境配置文件改一下。便于启动两个设计器,进行对比调试 - private void setDebugEnv() { - - DesignUtils.setPort(DEBUG_PORT); - DesignerEnvManager.setEnvFile(new File(ProductConstants.getEnvHome() + File.separator + ProductConstants.APP_NAME + "Env_debug.xml")); - } - - + @Override public void stop() { - + } } diff --git a/designer/src/com/fr/start/module/PreStartActivator.java b/designer/src/com/fr/start/module/PreStartActivator.java index 9ef1af8dc7..eba3996b16 100644 --- a/designer/src/com/fr/start/module/PreStartActivator.java +++ b/designer/src/com/fr/start/module/PreStartActivator.java @@ -3,32 +3,79 @@ package com.fr.start.module; import com.fr.base.FRContext; import com.fr.design.DesignerEnvManager; import com.fr.design.RestartHelper; +import com.fr.design.utils.DesignUtils; +import com.fr.general.ComparatorUtils; import com.fr.general.SiteCenter; import com.fr.module.Activator; import com.fr.stable.BuildContext; +import com.fr.stable.ProductConstants; + +import java.io.File; /** * Created by juhaoyu on 2018/1/8. */ public class PreStartActivator extends Activator { - + + private static final int MESSAGE_PORT = 51462; + + private static final int DEBUG_PORT = 51463; + @Override public void start() { - + RestartHelper.deleteRecordFilesWhenStart(); BuildContext.setBuildFilePath("/com/fr/stable/build.properties"); SiteCenter.getInstance(); + if (checkMultiStart()) { + return; + } initLanguage(); } - + + private boolean checkMultiStart() { + + if (isDebug()) { + setDebugEnv(); + } else { + DesignUtils.setPort(getStartPort()); + } + // 如果端口被占用了 说明程序已经运行了一次,也就是说,已经建立一个监听服务器,现在只要给服务器发送命令就好了 + if (DesignUtils.isStarted()) { + DesignUtils.clientSend(getModule().upFindSingleton(StartupArgs.class).get()); + return true; + } + return false; + } + + private int getStartPort() { + + return MESSAGE_PORT; + } + + + //在VM options里加入-Ddebug=true激活 + private boolean isDebug() { + + return ComparatorUtils.equals("true", System.getProperty("debug")); + } + + + //端口改一下,环境配置文件改一下。便于启动两个设计器,进行对比调试 + private void setDebugEnv() { + + DesignUtils.setPort(DEBUG_PORT); + DesignerEnvManager.setEnvFile(new File(ProductConstants.getEnvHome() + File.separator + ProductConstants.APP_NAME + "Env_debug.xml")); + } + private void initLanguage() { //这两句的位置不能随便调换,因为会影响语言切换的问题 FRContext.setLanguage(DesignerEnvManager.getEnvManager(false).getLanguage()); DesignerEnvManager.checkNameEnvMap(); } - + @Override public void stop() { - + } }