Spring Boot 2.0与Java 9
生活随笔
收集整理的這篇文章主要介紹了
Spring Boot 2.0与Java 9
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Java 9發布至今已經有半年之久,Spring Boot對其的支持進度也快接近完成,本文就來整理一下在Java 9上運行Spring Boot的一些要點。
必須使用Spring Boot2.0
在Spring Boot的版本計劃中明確說明了2.0版本開始才對Java 9進行支持,而1.x版本暫時沒有對Java 9的支持計劃,所以如果我們要使用Java 9,就必須將Spring Boot版本升級至2.0。
細節注意點
AspectJ
在Java9中要使用JDK的編譯織入切面時,我們需要引入AspectJ 1.9,但是這個版本還處于RC狀態,并不是正式版本,所以當Spring Boot 2會在Aspect 1.9 GA的時候更新這個版本依賴。
JAXB
如果使用Hibernate的情況下,由于依賴JAXB,這個時候可能會碰到這個錯誤:java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException,面對這個問題,只需要引入如下依賴就可以解決:
| <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.0</version> </dependency> |
測試插件
最新的maven-surefire-plugin 插件(2.20.1版本)需要手工指定一個模塊以防止包含java.se.ee:
| <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <argLine>--add-modules java.base</argLine> </configuration> </plugin> |
或者也可以指定降級到2.20.0版本
一些暫不支持的類庫
參考資料
- Running Spring Boot on Java 9
總結
以上是生活随笔為你收集整理的Spring Boot 2.0与Java 9的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最新天猫Java面试题(含总结):线程池
- 下一篇: java架构师进阶独孤九剑系列(一):数