1
resposta

TypeNotPresentException: javax.xml.bind.JAXBContext not present

Olá, baixei o projeto disponibilizado no início da aula 03. Spring Config Server, importei e não há nenhum erro. Ao subir os projetos, dá o erro javax.xml.bind.JAXBContext not present. Pelo que eu já tinha pesquisado, é um erro devido ao JAXB ter sido removido a partir do Java 9. Coloquei um trecho no pom.xml que resolveu esse erro em outro projeto meu, mas continua com o erro ao subir os projetos desse curso.

Meu ambiente: Windows 10 JAVA_HOME=C:\Program Files\Java\zulu8.54.0.21-ca-jdk8.0.292-win_x64 JRE_HOME=C:\Program Files\Java\zulu8.54.0.21-ca-jre8.0.292-win_x64

Segue o log completo do erro e o pom.xml Agradeço desde já a atenção.

2021-05-29 13:40:06.239[0;39m [32m INFO[0;39m [35m1180[0;39m [2m---[0;39m [2m[           main][0;39m [36mc.s.j.s.i.a.WebApplicationImpl          [0;39m [2m:[0;39m Initiating Jersey application, version 'Jersey: 1.19.1 03/11/2016 02:08 PM'
[2m2021-05-29 13:40:06.287[0;39m [31mERROR[0;39m [35m1180[0;39m [2m---[0;39m [2m[           main][0;39m [36mo.a.c.c.C.[Tomcat].[localhost].[/]      [0;39m [2m:[0;39m Exception starting filter [servletContainer]

java.lang.TypeNotPresentException: Type javax.xml.bind.JAXBContext not present
    at java.base/sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:117) ~[na:na]
    at java.base/sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125) ~[na:na]
    at java.base/sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49) ~[na:na]
Caused by: java.lang.IllegalStateException: StandardEngine[Tomcat].StandardHost[localhost].TomcatEmbeddedContext[] failed to start
    at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.rethrowDeferredStartupExceptions(TomcatWebServer.java:171) ~[spring-boot-2.1.5.RELEASE.jar:2.1.5.RELEASE]
    at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:109) ~[spring-boot-2.1.5.RELEASE.jar:2.1.5.RELEASE]
    ... 13 common frames omitted

pom.xml do eureka-server

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.5.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>br.com.alura.microservice.eureka</groupId>
    <artifactId>eureka-server</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>eureka-server</name>
    <description>Eureka Server</description>

    <properties>
        <java.version>1.8</java.version>
        <spring-cloud.version>Greenwich.SR1</spring-cloud.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

        <!--Dependencia para solucionar o erro javax/xml/bind/JAXBException  
            https://blog.caelum.com.br/erros-com-jaxb-no-java-9/  -->
            <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>            
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>
1 resposta

Fala, Marcio! Espero que esteja bem!

Desculpe a demora em dar um retorno!

Testei o arquivo disponibilizado e correu conforme informou

Vou pedir para baixar os que disponibilizei em meu GitHub para que possamos trocar esse arquivo da aula o mais rápido possível.

Resolvi deixá-los separados. Segue abaixo:

Fico no aguardo do seu retorno para sabermos se deu tudo certo!

Um abraço!!!