이것은 나를 미친 듯이 몰아 넣고있다. Mac OSX 10.5.7에서 activemq를 실행하려고합니다. Java 버전 1.5.0_19 및 activemq 5.2.0 있습니다. 아래는 bin/activemq를 실행할 때 나는 예외입니다. 그것은 logmj를 찾을 수없는 것으로 보입니다. 이상한 점은 activemq가 있고 lib/optionals 디렉토리에있는 것입니다. 내가 생각할 수있는 유일한 것은 내가 어딘가에서 갈등을 겪고 있다는 것이지만 이것이 가능한 방법을 상상할 수는 없다. 누군가가 내가 귀가하는 조언이 있다면, 인터넷 검색에서 동일한 오류가 발생해도 거의 결과가 나타나지 않으며 정확한 오류가있는 사람에게는 해결책이 없습니다. 예외가 org.apache.log4j.Category
하는 NoClassDefFoundError
의해 야기되는 것처럼activemq 적합하지 않은 로그 생성자
> brad-robertsons-macbook-pro:apache-activemq-5.2.0
> bradrobertson$ ./bin/activemq
> ACTIVEMQ_HOME:
> /Users/bradrobertson/Java/apache-activemq-5.2.0
> ACTIVEMQ_BASE:
> /Users/bradrobertson/Java/apache-activemq-5.2.0
> Loading message broker from:
> xbean:activemq.xml ERROR:
> java.lang.RuntimeException: Failed to
> execute start task. Reason:
> java.io.IOException: Could not load
> xbean
> factory:java.lang.ExceptionInInitializerError
> java.lang.RuntimeException: Failed to
> execute start task. Reason:
> java.io.IOException: Could not load
> xbean
> factory:java.lang.ExceptionInInitializerError
> at
> org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:98)
> at
> org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
> at
> org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:129)
> at
> org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
> at
> org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:79)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method) at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at
> java.lang.reflect.Method.invoke(Method.java:585)
> at
> org.apache.activemq.console.Main.runTaskClass(Main.java:225)
> at
> org.apache.activemq.console.Main.main(Main.java:106)
> Caused by: java.io.IOException: Could
> not load xbean
> factory:java.lang.ExceptionInInitializerError
> at
> org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:27)
> at
> org.apache.activemq.broker.BrokerFactory.createBrokerFactoryHandler(BrokerFactory.java:43)
> at
> org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:70)
> at
> org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
> at
> org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
> at
> org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
> ... 10 more Caused by:
> java.lang.ExceptionInInitializerError
> at
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method) at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
> at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> at
> java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> at
> java.lang.Class.newInstance0(Class.java:350)
> at
> java.lang.Class.newInstance(Class.java:303)
> at
> org.apache.activemq.util.FactoryFinder.newInstance(FactoryFinder.java:55)
> at
> org.apache.activemq.util.FactoryFinder.newInstance(FactoryFinder.java:42)
> at
> org.apache.activemq.broker.BrokerFactory.createBrokerFactoryHandler(BrokerFactory.java:41)
> ... 14 more Caused by:
> org.apache.commons.logging.LogConfigurationException:
> org.apache.commons.logging.LogConfigurationException:
> No suitable Log constructor
> [Ljava.lang.Class;@abcc03 for
> org.apache.commons.logging.impl.Log4JLogger
> (Caused by
> java.lang.NoClassDefFoundError:
> org/apache/log4j/Category) (Caused by
> org.apache.commons.logging.LogConfigurationException:
> No suitable Log constructor
> [Ljava.lang.Class;@abcc03 for
> org.apache.commons.logging.impl.Log4JLogger
> (Caused by
> java.lang.NoClassDefFoundError:
> org/apache/log4j/Category)) at
> org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
> at
> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
> at
> org.apache.activemq.xbean.XBeanBrokerFactory.<clinit>(XBeanBrokerFactory.java:43)
> ... 23 more Caused by:
> org.apache.commons.logging.LogConfigurationException:
> No suitable Log constructor
> [Ljava.lang.Class;@abcc03 for
> org.apache.commons.logging.impl.Log4JLogger
> (Caused by
> java.lang.NoClassDefFoundError:
> org/apache/log4j/Category) at
> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:413)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
> ... 27 more Caused by:
> java.lang.NoClassDefFoundError:
> org/apache/log4j/Category at
> java.lang.Class.getDeclaredConstructors0(Native
> Method) at
> java.lang.Class.privateGetDeclaredConstructors(Class.java:2357)
> at
> java.lang.Class.getConstructor0(Class.java:2671)
> at
> java.lang.Class.getConstructor(Class.java:1629)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:410)
> ... 28 more ERROR:
> java.lang.Exception:
> java.io.IOException: Could not load
> xbean
> factory:java.lang.ExceptionInInitializerError
> java.lang.Exception:
> java.io.IOException: Could not load
> xbean
> factory:java.lang.ExceptionInInitializerError
> at
> org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:99)
> at
> org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
> at
> org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:129)
> at
> org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
> at
> org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:79)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method) at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at
> java.lang.reflect.Method.invoke(Method.java:585)
> at
> org.apache.activemq.console.Main.runTaskClass(Main.java:225)
> at
> org.apache.activemq.console.Main.main(Main.java:106)
> Caused by: java.io.IOException: Could
> not load xbean
> factory:java.lang.ExceptionInInitializerError
> at
> org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:27)
> at
> org.apache.activemq.broker.BrokerFactory.createBrokerFactoryHandler(BrokerFactory.java:43)
> at
> org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:70)
> at
> org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
> at
> org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
> at
> org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
> ... 10 more Caused by:
> java.lang.ExceptionInInitializerError
> at
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method) at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
> at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> at
> java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> at
> java.lang.Class.newInstance0(Class.java:350)
> at
> java.lang.Class.newInstance(Class.java:303)
> at
> org.apache.activemq.util.FactoryFinder.newInstance(FactoryFinder.java:55)
> at
> org.apache.activemq.util.FactoryFinder.newInstance(FactoryFinder.java:42)
> at
> org.apache.activemq.broker.BrokerFactory.createBrokerFactoryHandler(BrokerFactory.java:41)
> ... 14 more Caused by:
> org.apache.commons.logging.LogConfigurationException:
> org.apache.commons.logging.LogConfigurationException:
> No suitable Log constructor
> [Ljava.lang.Class;@abcc03 for
> org.apache.commons.logging.impl.Log4JLogger
> (Caused by
> java.lang.NoClassDefFoundError:
> org/apache/log4j/Category) (Caused by
> org.apache.commons.logging.LogConfigurationException:
> No suitable Log constructor
> [Ljava.lang.Class;@abcc03 for
> org.apache.commons.logging.impl.Log4JLogger
> (Caused by
> java.lang.NoClassDefFoundError:
> org/apache/log4j/Category)) at
> org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
> at
> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
> at
> org.apache.activemq.xbean.XBeanBrokerFactory.<clinit>(XBeanBrokerFactory.java:43)
> ... 23 more Caused by:
> org.apache.commons.logging.LogConfigurationException:
> No suitable Log constructor
> [Ljava.lang.Class;@abcc03 for
> org.apache.commons.logging.impl.Log4JLogger
> (Caused by
> java.lang.NoClassDefFoundError:
> org/apache/log4j/Category) at
> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:413)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
> ... 27 more Caused by:
> java.lang.NoClassDefFoundError:
> org/apache/log4j/Category at
> java.lang.Class.getDeclaredConstructors0(Native
> Method) at
> java.lang.Class.privateGetDeclaredConstructors(Class.java:2357)
> at
> java.lang.Class.getConstructor0(Class.java:2671)
> at
> java.lang.Class.getConstructor(Class.java:1629)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:410)
> ... 28 more
예, log4j를 인식하지 못합니다. 나는 log4j가 activemq 디렉토리의 lib/optional 디렉토리 내에 있기 때문에 그것을 이해하지 못한다. 그리고 activemq는 자신의 ACTIVEMQ_CLASSPATH 변수를 설정하고 있습니다. 로드하지 않으면 다운로드에 포함시키는 것이 무엇입니까? 아니면 내 컴퓨터에 충돌이있을 수 있습니까? 나는 그것이 무엇을 얻고 있는지를보기 위해 어떻게 확인하는지조차 모른다. 또는 그것이 전혀 얻지 못한다면 – brad