Error de inicio del proyecto Spring java.lang.NoClassDefFoundError: javax/xml/soap/SOAPException

1. Antecedentes

Hoy, cuando comencé un proyecto anterior en un nuevo dispositivo, descubrí que no se podía iniciar y se informó un error

java.lang.NoClassDefFoundError : javax/xml/soap/SOAPException

2. Motivo

Busqué en Internet, y la razón aproximada es que el equipo actual usa el relativamente nuevo JDK 11, java.xml.soap.SOAPExceptionpero las clases en JDK8. Se eliminó en JDK9 y versiones posteriores, por lo que provocó un error.

3. Soluciones

Afortunadamente, todavía hay una solución. El equipo de desarrollo de JDK tiene que llenar el agujero después de excavarlo.
Podemos introducir manualmente esta dependencia.

<dependency>
    <groupId>javax.xml.soap</groupId>
    <artifactId>javax.xml.soap-api</artifactId>
    <version>1.4.0</version>
</dependency>

Sin embargo, si solo se introduce esta dependencia, el proyecto de inicio informará un error

javax.xml.soap.SOAPException: Unable to create SAAJ meta-factory: Provider com.sun.xml.internal.messaging.saaj.soap.SAAJMetaFactoryImpl not found

En este momento, también necesitamos introducir una segunda dependencia

<dependency>
    <groupId>com.sun.xml.messaging.saaj</groupId>
    <artifactId>saaj-impl</artifactId>
    <version>1.5.1</version>
</dependency>

Recuerde actualizar maven ~
Después de esto, reinicie y comience, está bien ~
inserte la descripción de la imagen aquí

4. Referencias

https://www.likecs.com/ask-465155.html
https://stackoverflow.com/questions/48626824/java-lang-noclassdeffounderror-javax-xml-soap-soapexception

Supongo que te gusta

Origin blog.csdn.net/sdujava2011/article/details/131097469
Recomendado
Clasificación