一尘不染

在Tomcat中,java.lang.LinkageError:JAXB 2.1 API正在从引导类加载器加载

tomcat

我正在尝试将Webapp加载到Tomcat中。似乎在抱怨它具有比我的应用程序更旧的JAR版本。我应该删除该较旧的JAR,使用Java的较新版本,编辑引导程序类加载器(如何?)还是什么?

消息:正在从引导程序类加载器加载JAXB 2.1 API,但是此RI(从jar:file:/
C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%205.5/webapps/SkillsDB/WEB-
INF/lib/ jaxb-
impl.jar!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class)需要2.2
API。使用认可的目录机制将jaxb-
api.jar放在引导类加载器中。(请参阅http://java.sun.com/j2se/1.6.0/docs/guide/standards/

原因:执行控制器[FormattedDocumentController]的操作[getDocx]导致异常::java.lang.LinkageError从引导类加载器加载了JAXB
2.1 API,但是此RI(来自jar:file:/ C:/ Program%20Files /
Apache%20Software%20Foundation /Tomcat%205.5/webapps/SkillsDB/WEB-
INF/lib/jaxb-
impl.jar!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class)需要2.2
API。使用认可的目录机制将jaxb-
api.jar放在引导类加载器中。(请参阅http://java.sun.com/j2se/1.6.0/docs/guide/standards/


阅读 346

收藏
2020-06-16

共1个答案

一尘不染

将您的JAXB 2.2 JAR放入

%JAVA_HOME%\lib\endorsed

它应该工作。

如果您的Java安装在

C:\Program Files\Java

那么您应该将JAXB 2.2 JAR放在:

C:\Program Files\Java\lib\endorsed

目录。

2020-06-16