切换到 Java 9 时 Spring Boot 的 javax.xml.bind.JAXBException 的 ClassNotFoundException

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/48986999/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-12 02:56:29  来源:igfitidea点击:

ClassNotFoundException for javax.xml.bind.JAXBException with Spring Boot when switch to Java 9

javaspringspring-bootjava-9

提问by Rajat

Initialized the project using start.spring.io

使用start.spring.io初始化项目

Added WEB,JPA,H2dependencies then tried to run the MainApplication.javausing Jdk 9and got the following error log

添加了WEB,JPA,H2依赖然后尝试运行MainApplication.javausingJdk 9并得到以下错误日志

  .   ____          _            __ _ _
 /\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::       (v1.5.10.RELEASE)

2018-02-26 16:23:33.973  INFO 3860 --- [           main] com.example.demo.DemoApplication         : Starting DemoApplication v0.0.1-SNAPSHOT on RAJAT-PC with PID 3860 (C:\Users\devra\Downloads\Compressed\demo\target\demo-0.0.1-SNAPSHOT.jar started by rajat in C:\Users\devra\Downloads\Compressed\demo\target)
2018-02-26 16:23:33.973  INFO 3860 --- [           main] com.example.demo.DemoApplication         : No active profile set, falling back to default profiles: default
2018-02-26 16:23:34.254  INFO 3860 --- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@1aa7ecca: startup date [Mon Feb 26 16:23:34 IST 2018]; root of context hierarchy
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.springframework.cglib.core.ReflectUtils (jar:file:/C:/Users/devra/Downloads/Compressed/demo/target/demo-0.0.1-SNAPSHOT.jar!/BOOT-INF/lib/spring-core-4.3.14.RELEASE.jar!/) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
WARNING: Please consider reporting this to the maintainers of org.springframework.cglib.core.ReflectUtils
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
2018-02-26 16:23:38.429  INFO 3860 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$c55a85e] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2018-02-26 16:23:39.856  INFO 3860 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2018-02-26 16:23:39.888  INFO 3860 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2018-02-26 16:23:39.903  INFO 3860 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.5.27
2018-02-26 16:23:40.247  INFO 3860 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2018-02-26 16:23:40.247  INFO 3860 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 6024 ms
2018-02-26 16:23:40.622  INFO 3860 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'characterEncodingFilter' to: [/*]
2018-02-26 16:23:40.622  INFO 3860 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2018-02-26 16:23:40.622  INFO 3860 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2018-02-26 16:23:40.622  INFO 3860 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'requestContextFilter' to: [/*]
2018-02-26 16:23:40.622  INFO 3860 --- [ost-startStop-1] .s.DelegatingFilterProxyRegistrationBean : Mapping filter: 'springSecurityFilterChain' to: [/*]
2018-02-26 16:23:40.622  INFO 3860 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Mapping servlet: 'dispatcherServlet' to [/]
2018-02-26 16:23:40.622  INFO 3860 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Mapping servlet: 'webServlet' to [/h2-console/*]
2018-02-26 16:23:42.200  INFO 3860 --- [           main] j.LocalContainerEntityManagerFactoryBean : Building JPA container EntityManagerFactory for persistence unit 'default'
2018-02-26 16:23:42.263  INFO 3860 --- [           main] o.hibernate.jpa.internal.util.LogHelper  : HHH000204: Processing PersistenceUnitInfo [
        name: default
        ...]
2018-02-26 16:23:42.591  INFO 3860 --- [           main] org.hibernate.Version                    : HHH000412: Hibernate Core {5.0.12.Final}
2018-02-26 16:23:42.607  INFO 3860 --- [           main] org.hibernate.cfg.Environment            : HHH000206: hibernate.properties not found
2018-02-26 16:23:42.607  INFO 3860 --- [           main] org.hibernate.cfg.Environment            : HHH000021: Bytecode provider name : javassist
2018-02-26 16:23:42.653  WARN 3860 --- [           main] ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
2018-02-26 16:23:42.669  INFO 3860 --- [           main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
2018-02-26 16:23:42.716  INFO 3860 --- [           main] utoConfigurationReportLoggingInitializer :

Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled.
2018-02-26 16:23:42.747 ERROR 3860 --- [           main] o.s.boot.SpringApplication               : Application startup failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1628) ~[spring-beans-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:555) ~[spring-beans-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) ~[spring-beans-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.beans.factory.support.AbstractBeanFactory.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1080) ~[spring-context-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:857) ~[spring-context-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543) ~[spring-context-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring-boot-1.5.10.RELEASE.jar!/:1.5.10.RELEASE]
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693) [spring-boot-1.5.10.RELEASE.jar!/:1.5.10.RELEASE]
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360) [spring-boot-1.5.10.RELEASE.jar!/:1.5.10.RELEASE]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:303) [spring-boot-1.5.10.RELEASE.jar!/:1.5.10.RELEASE]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118) [spring-boot-1.5.10.RELEASE.jar!/:1.5.10.RELEASE]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107) [spring-boot-1.5.10.RELEASE.jar!/:1.5.10.RELEASE]
        at com.example.demo.DemoApplication.main(DemoApplication.java:10) [classes!/:0.0.1-SNAPSHOT]
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
        at java.base/java.lang.reflect.Method.invoke(Method.java:564) ~[na:na]
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) [demo-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT]
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) [demo-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT]
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:50) [demo-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT]
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51) [demo-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT]
Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
        at org.hibernate.boot.spi.XmlMappingBinderAccess.<init>(XmlMappingBinderAccess.java:43) ~[hibernate-core-5.0.12.Final.jar!/:5.0.12.Final]
        at org.hibernate.boot.MetadataSources.<init>(MetadataSources.java:87) ~[hibernate-core-5.0.12.Final.jar!/:5.0.12.Final]
        at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:179) ~[hibernate-entitymanager-5.0.12.Final.jar!/:5.0.12.Final]
        at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:149) ~[hibernate-entitymanager-5.0.12.Final.jar!/:5.0.12.Final]
        at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:54) ~[spring-orm-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:360) ~[spring-orm-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:382) ~[spring-orm-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:371) ~[spring-orm-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:336) ~[spring-orm-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1687) ~[spring-beans-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1624) ~[spring-beans-4.3.14.RELEASE.jar!/:4.3.14.RELEASE]
        ... 24 common frames omitted
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
        at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466) ~[na:na]
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:563) ~[na:na]
        at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:94) ~[demo-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT]
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496) ~[na:na]
        ... 35 common frames omitted

Then I switched to jdk 8 and it working fine.

然后我切换到 jdk 8,它工作正常。

The same happening with Spring-boot 2.0.0 RC2

Spring-boot 2.0.0 RC2也发生了同样的情况

Why this happening when spring doc mentioned the required Java version for it to be 8 or 9.

为什么会在 spring 文档提到所需的 Java 版本为 8 或 9 时发生这种情况。

采纳答案by davidxxx

You need to add the JAXB dependency (as not provided any longer by default in Java 9) and you have touse Spring Boot 2 :

您需要添加 JAXB 依赖项(在 Java 9 中默认不再提供)并且您必须使用 Spring Boot 2 :

<dependency>
    <groupId>javax.xml.bind</groupId>
     <artifactId>jaxb-api</artifactId>
    <version>2.3.0</version>
 </dependency>

Note that if you use Java 10, you would have exactly the same issue as the JAXB dependency removal was not done just for the Java 9 version.

请注意,如果您使用 Java 10,您将遇到完全相同的问题,因为 JAXB 依赖项移除并非仅针对 Java 9 版本完成。



The Spring Boot wiki about Java 9 and abovelists things that you need to know to run Spring Boot apps on Java 9 and above.

关于 Java 9 及更高版本的 Spring Boot wiki列出了在 Java 9 及更高版本上运行 Spring Boot 应用程序需要知道的事情。

Spring Boot version requirements

Spring Boot 版本要求

Spring Boot 1 doesn't support it (and no planned to).
Spring Boot 2 supports it.

Spring Boot 1 不支持它(也没有计划支持)。
Spring Boot 2 支持它。

Spring Boot 2 is the first version to support Java 9 (Java 8 is also supported). If you are using 1.5 and wish to use Java 9 you should upgrade to 2.0 as we have no plans to support Java 9 on Spring Boot 1.5.x.

Spring Boot 2 是第一个支持 Java 9 的版本(也支持 Java 8)。如果您使用 1.5 并希望使用 Java 9,您应该升级到 2.0,因为我们没有计划在 Spring Boot 1.5.x 上支持 Java 9。

Java 10is supported as of Spring Boot 2.0.1.RELEASEwhile Java 11is supported as of Spring Boot 2.1.0.M2.

Java的10被支持为春季启动的2.0.1.RELEASEJava的11得到支撑春天启动的2.1.0.M2

Some known workarounds

一些已知的解决方法

AspectJ

方面J

With Java 9, if you need to weave classes from the JDK, you need to use AspectJ 1.9. Spring AOP should work fine in most cases with AspectJ 1.8 (the default in Spring Boot 2.0).

使用 Java 9,如果您需要从 JDK 中编织类,则需要使用 AspectJ 1.9。大多数情况下,Spring AOP 应该可以与 AspectJ 1.8(Spring Boot 2.0 中的默认值)一起正常工作。

JAXB

JAXB

When upgrading you may face the following:

java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException

Hibernate typically requires JAXB that's no longer provided by default. You can add the java.xml.bind module to restore this functionality with Java9 or Java10 (even if the module is deprecated).

升级时可能会遇到以下情况:

java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException

Hibernate 通常需要默认不再提供的 JAXB。您可以添加 java.xml.bind 模块以使用 Java9 或 Java10 恢复此功能(即使该模块已弃用)。

<dependency>
    <groupId>javax.xml.bind</groupId>
     <artifactId>jaxb-api</artifactId>
    <version>2.3.0</version>
 </dependency>

As of Java11, the module is not available so your only option is to add the JAXB RI (you can do that as of Java9 in place of adding the java.xml.bindmodule:

从 Java11 开始,该模块不可用,因此您唯一的选择是添加 JAXB RI(从 Java9 开始,您可以这样做来代替添加java.xml.bind模块:

<dependency>
    <groupId>org.glassfish.jaxb</groupId>
    <artifactId>jaxb-runtime</artifactId>
</dependency>

Lombok

龙目岛

If you are using lombok, the managed version of Spring Boot may not work with the latest JDK. Check the Lombok web site and override its version if necessary.

如果您使用的是 lombok,则 Spring Boot 的托管版本可能不适用于最新的 JDK。检查 Lombok 网站并在必要时覆盖其版本。

Some known limitations

一些已知的限制

These libraries do not have full support for Java 9 yet:

  • Apache Cassandra, see #10453

这些库还不完全支持 Java 9:

  • Apache Cassandra,参见 #10453


Please, don't hesitate to edit this post if changes occur about the Java 9 and above compatibility with Spring Boot.

如果 Java 9 及更高版本与 Spring Boot 的兼容性发生变化,请不要犹豫编辑这篇文章。

回答by Lokesh

Added below dependency and resolve the issue

添加以下依赖项并解决问题

<dependency>
    <groupId>javax.xml.bind</groupId>
     <artifactId>jaxb-api</artifactId>
    <version>2.3.0</version>
 </dependency>

回答by Santhosh Surimani

Add below maven dependencies in you pom.xml and the issue will get resolve. in Java9/10 JaxB modules has been removed, hence need to add manually.

在 pom.xml 中添加以下 maven 依赖项,问题将得到解决。在 Java9/10 中 JaxB 模块已被删除,因此需要手动添加。

<dependency>
  <groupId>javax.xml.bind</groupId>
  <artifactId>jaxb-api</artifactId>
  <version>2.2.11</version>
</dependency>
<dependency>
  <groupId>com.sun.xml.bind</groupId>
  <artifactId>jaxb-core</artifactId>
 <version>2.2.11</version>
</dependency>
<dependency>
  <groupId>com.sun.xml.bind</groupId>
  <artifactId>jaxb-impl</artifactId>
  <version>2.2.11</version>
 </dependency>
<dependency>
  <groupId>javax.activation</groupId>
  <artifactId>activation</artifactId>
  <version>1.1.1</version>
</dependency>
<dependency>
  <groupId>com.fasterxml.Hymanson.dataformat</groupId>
  <artifactId>Hymanson-dataformat-xml</artifactId>
</dependency>

回答by James Mudd

Or for Gradle add the dependency

或者为 Gradle 添加依赖项

compile group: 'javax.xml.bind', name: 'jaxb-api', version: '2.3.1'

回答by Alex

@Ratha : For Java12 (referred to your comment) this dependency list works:

@Ratha :对于 Java12(参考您的评论),此依赖项列表有效:

    <dependencies>
        <...>
        <dependency>
            <groupId>com.sun.activation</groupId>
            <artifactId>javax.activation</artifactId>
            <version>1.2.0</version>
        </dependency>
        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>2.3.1</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jaxb</groupId>
            <artifactId>jaxb-runtime</artifactId>
            <version>2.3.1</version>
            <scope>runtime</scope>
        </dependency>
    </dependencies>

回答by Isidro.rn

The accepted answer is right, just wanted to point out I was having the same issue during Tomcat 9 startup while migrating a web project to OpenJDK11. In my case got the following stack trace:

接受的答案是正确的,只是想指出我在将 Web 项目迁移到 OpenJDK11 时在 Tomcat 9 启动期间遇到了同样的问题。在我的情况下,得到以下堆栈跟踪:

SEVERE [main] com.sun.faces.config.ConfigureListener.contextInitialized Critical error during deployment:
       java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
               at java.base/java.lang.Class.getDeclaredFields0(Native Method)
               at java.base/java.lang.Class.privateGetDeclaredFields(Class.java:3061)
               at java.base/java.lang.Class.getDeclaredFields(Class.java:2248)
               at com.sun.faces.application.annotation.ManagedBeanConfigHandler.collectAnnotatedFields(ManagedBeanConfigHandler.java:245)
               at com.sun.faces.application.annotation.ManagedBeanConfigHandler.getBeanInfo(ManagedBeanConfigHandler.java:154)
               at com.sun.faces.application.annotation.ManagedBeanConfigHandler.process(ManagedBeanConfigHandler.java:140)
               at com.sun.faces.application.annotation.ManagedBeanConfigHandler.push(ManagedBeanConfigHandler.java:126)
               at com.sun.faces.application.annotation.AnnotationManager.applyConfigAnnotations(AnnotationManager.java:234)
               at com.sun.faces.config.processor.AbstractConfigProcessor.processAnnotations(AbstractConfigProcessor.java:449)
               at com.sun.faces.config.processor.ManagedBeanConfigProcessor.process(ManagedBeanConfigProcessor.java:245)
               at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:155)
               at com.sun.faces.config.processor.ValidatorConfigProcessor.process(ValidatorConfigProcessor.java:121)
               at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:155)
               at com.sun.faces.config.processor.ConverterConfigProcessor.process(ConverterConfigProcessor.java:127)
               at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:155)
               at com.sun.faces.config.processor.ComponentConfigProcessor.process(ComponentConfigProcessor.java:118)
               at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:155)
               at com.sun.faces.config.processor.ApplicationConfigProcessor.process(ApplicationConfigProcessor.java:403)
               at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:155)
               at com.sun.faces.config.processor.LifecycleConfigProcessor.process(LifecycleConfigProcessor.java:138)
               at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:155)
               at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:246)
               at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:443)
               at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:237)
               at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4684)
               at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5147)
               at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
               at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:717)
               at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
               at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:705)
               at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:978)
               at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1848)
               at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
               at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
               at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
               at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:118)
               at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:773)
               at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:427)
               at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1576)
               at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
               at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
               at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
               at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
               at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:936)
               at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:841)
               at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
               at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384)
               at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374)
               at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
               at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
               at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
               at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909)
               at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
               at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
               at org.apache.catalina.core.StandardService.startInternal(StandardService.java:421)
               at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
               at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930)
               at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
               at org.apache.catalina.startup.Catalina.start(Catalina.java:633)
               at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
               at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
               at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
               at java.base/java.lang.reflect.Method.invoke(Method.java:566)
               at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:343)
               at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:474)
       Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
               at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1365)
               at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1188)
               ... 65 more

Hope it helps

希望能帮助到你