ActiveMQ 5.3.0启动报错:
Caused by: java.lang.LinkageError: JAXB 2.0 API is being loaded from the bootst
ap classloader, but this RI (from jar:file:/D:/develop/activemq/apache-activemq
5.3.0/bin/../lib/jaxb-impl-2.1.6.jar!/com/sun/xml/bind/v2/model/impl/ModelBuild
r.class) needs 2.1 API. Use the endorsed directory mechanism to place jaxb-api.
ar in the bootstrap classloader. (See http://java.sun.com/j2se/1.5.0/docs/guide
standards/)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.<clinit>(ModelBuilder.ja
a:173)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBConte
tImpl.java:422)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.j
va:286)
at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java
139)
根据上面的错误说是jaxb-api.jar or jaxws-api.jar版本过低,看提示也是这个么说,不过下载了2.1的jar包放到<java-home>/lib/endorsed目录下重载jar无效。
我的jdk版本:
java version "1.6.0_02-ea"
Java(TM) SE Runtime Environment (build 1.6.0_02-ea-b02)
Java HotSpot(TM) Client VM (build 1.6.0_02-ea-b02, mixed mode, sharing)
尝试删除了lib目录下的jaxb-impl-2.1.6.jar,再启动就正常了。貌似用了这个jar包的xml的解析实现解析xml就不行了。