Log4j 2混合同步和异步日志记录问题。NoClassDefFoundError:com / lmax / disruptor / EventFactory

时间:2020-10-05 05:29:15

标签: java logging log4j

我在jars下面添加了Java构建路径库。 Disruptor-3.4.2.jar, log4j-core-2.13.3.jar, log4j-api-2.13.3.jar。

在log4j2.xml中使用异步记录器时,它会引发以下错误。

2020-09-30 06:34:39,334 Log4j2-TF-47-ConfiguratonFileWatcher-27 ERROR Unable to invoke factory method in class org.apache.logging.log4j.core.async.AsyncLoggerConfig for element AsyncLogger: java.lang.NoClassDefFoundError: com/lmax/disruptor/EventFactory java.lang.reflect.InvocationTargetException
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at java.lang.reflect.Method.invoke(Method.java:498)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:136)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:964)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:904)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:896)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:514)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:238)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:250)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:548)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.LoggerContext.onChange(LoggerContext.java:672)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.config.ConfiguratonFileWatcher$ReconfigurationRunnable.run(ConfiguratonFileWatcher.java:68)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at java.lang.Thread.run(Thread.java:748)
INFO   | jvm 2    | 2020/09/30 06:34:39 | Caused by: java.lang.NoClassDefFoundError: com/lmax/disruptor/EventFactory
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.config.AbstractConfiguration.getAsyncLoggerConfigDelegate(AbstractConfiguration.java:203)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.async.AsyncLoggerConfig.<init>(AsyncLoggerConfig.java:91)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.apache.logging.log4j.core.async.AsyncLoggerConfig.createLogger(AsyncLoggerConfig.java:273)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   ... 15 more
INFO   | jvm 2    | 2020/09/30 06:34:39 | Caused by: java.lang.ClassNotFoundException: com.lmax.disruptor.EventFactory cannot be found by org.apache.logging.log4j.core_2.11.2
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:511)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:414)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:153)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
INFO   | jvm 2    | 2020/09/30 06:34:39 |   ... 18 more

请提出可能出问题的地方。

0 个答案:

没有答案