From 7f149aafe8018352db409016aa88550034cb8da5 Mon Sep 17 00:00:00 2001 From: zhourui Date: Thu, 14 May 2020 13:18:40 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4log?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/x/server/console/Main.java | 12 +++++++++++- .../x/server/console/server/JettySeverTools.java | 13 +++++++++---- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/o2server/x_console/src/main/java/com/x/server/console/Main.java b/o2server/x_console/src/main/java/com/x/server/console/Main.java index b0c6696284..b385f0eef2 100644 --- a/o2server/x_console/src/main/java/com/x/server/console/Main.java +++ b/o2server/x_console/src/main/java/com/x/server/console/Main.java @@ -46,6 +46,7 @@ public class Main { private static final String MANIFEST_FILENAME = "manifest.cfg"; private static final String GITIGNORE_FILENAME = ".gitignore"; + public static boolean slf4jOtherImplOn = false; public static void main(String[] args) throws Exception { String base = getBasePath(); @@ -54,7 +55,16 @@ public class Main { /* getVersion需要FileUtils在后面运行 */ cleanTempDir(base); createTempClassesDirectory(base); - LogTools.setSlf4jSimple(); + //LogTools.setSlf4jSimple(); + try { + Main.class.getClassLoader().loadClass("org.slf4j.impl.SimpleLogger"); + LogTools.setSlf4jSimple(); + }catch(ClassNotFoundException ex) { + System.out.println("ignore:"+ex.getMessage()); + slf4jOtherImplOn = true; + } + org.slf4j.impl.StaticLoggerBinder.getSingleton(); + System.out.println("logger:" + org.slf4j.LoggerFactory.getLogger(Main.class)); SystemOutErrorSideCopyBuilder.start(); ResourceFactory.bind(); CommandFactory.printStartHelp(); diff --git a/o2server/x_console/src/main/java/com/x/server/console/server/JettySeverTools.java b/o2server/x_console/src/main/java/com/x/server/console/server/JettySeverTools.java index ec0f4ef770..b9ff31e5f5 100644 --- a/o2server/x_console/src/main/java/com/x/server/console/server/JettySeverTools.java +++ b/o2server/x_console/src/main/java/com/x/server/console/server/JettySeverTools.java @@ -92,10 +92,15 @@ public abstract class JettySeverTools { for (File o : FileUtils.listFiles(Config.dir_store_jars(), filter, null)) { jars.add(o.getAbsolutePath()); } - filter = new WildcardFileFilter("slf4j-api-*.jar"); - filter = FileFilterUtils.or(filter, new WildcardFileFilter("slf4j-simple-*.jar")); - filter = FileFilterUtils.or(filter, new WildcardFileFilter("jul-to-slf4j-*.jar")); - filter = FileFilterUtils.or(filter, new WildcardFileFilter("openjpa-*.jar")); + if (com.x.server.console.Main.slf4jOtherImplOn) { + filter = FileFilterUtils.or(new WildcardFileFilter("openjpa-*.jar")); + } else { + filter = new WildcardFileFilter("slf4j-api-*.jar"); + filter = FileFilterUtils.or(filter, new WildcardFileFilter("slf4j-simple-*.jar")); + filter = FileFilterUtils.or(filter, new WildcardFileFilter("jul-to-slf4j-*.jar")); + filter = FileFilterUtils.or(filter, new WildcardFileFilter("log4j-*.jar")); + filter = FileFilterUtils.or(filter, new WildcardFileFilter("openjpa-*.jar")); + } filter = FileFilterUtils.or(filter, new WildcardFileFilter("ehcache-*.jar")); /* 如果不单独导入会导致java.lang.NoClassDefFoundError: org/eclipse/jetty/http/MimeTypes */ filter = FileFilterUtils.or(filter, new WildcardFileFilter("jetty-all-*.jar")); -- GitLab