JDK11執行springboot專案出現:Type javax.xml.bind.JAXBContext not present

JavaEdge發表於2019-01-28

原因:java9模組化的概念使得JAXB預設沒有載入;

jaxb-api是存在jdk中的,只是預設沒有載入而已,手動引入即可。

推薦方式:(作者採用的此方式)

<!-- jaxb模組引用 - start -->  
<dependency>  
   <groupId>javax.xml.bind</groupId>  
    <artifactId>jaxb-api</artifactId>  
</dependency>  
<dependency>  
    <groupId>com.sun.xml.bind</groupId>  
    <artifactId>jaxb-impl</artifactId>  
    <version>2.3.0</version>  
</dependency>  
<dependency>  
    <groupId>org.glassfish.jaxb</groupId>  
    <artifactId>jaxb-runtime</artifactId>  
    <version>2.3.0</version>  
</dependency>  
<dependency>  
    <groupId>javax.activation</groupId>  
    <artifactId>activation</artifactId>  
    <version>1.1.1</version>  
</dependency>  
<!-- jaxb模組引用 - end -->複製程式碼

java9模組命令方式:

--add-modles java.xml.bind

java9預設未載入模組:

javax.activation
javax.corba
javax.transaction
javax.xml.bind
javax.xml.ws
javax.xml.ws.annotation

相關文章