Caused by java.lang.ClassNotFoundException javax.xml.bind.ValidationException异常
一、問題描述
Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/ValidationException
at java.base/java.lang.ClassLoader.defineClass1(Native Method) ~[na:na]
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1009) ~[na:na]
at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174) ~[na:na]
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:801) ~[na:na]
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:699) ~[na:na]
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:622) ~[na:na]
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:580) ~[na:na]
at java.base/jdk.internal.loader.ClassLoadersAppClassLoader.loadClass(ClassLoaders.java:190)[na:na]atjava.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)[na:na]atorg.hibernate.validator.internal.engine.ConfigurationImpl.<init>(ConfigurationImpl.java:129)[hibernate?validator???Causedby:java.lang.ClassNotFoundException:javax.xml.bind.ValidationException??atjava.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)[na:na]atjava.base/jdk.internal.loader.ClassLoadersAppClassLoader.loadClass(ClassLoaders.java:190) ~[na:na] at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499) ~[na:na] at org.hibernate.validator.internal.engine.ConfigurationImpl.<init>(ConfigurationImpl.java:129) ~[hibernate-validator- **Caused by: java.lang.ClassNotFoundException: javax.xml.bind.ValidationException** at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582) ~[na:na] at java.base/jdk.internal.loader.ClassLoadersAppClassLoader.loadClass(ClassLoaders.java:190)?[na:na]atjava.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)?[na:na]atorg.hibernate.validator.internal.engine.ConfigurationImpl.<init>(ConfigurationImpl.java:129)?[hibernate?validator???Causedby:java.lang.ClassNotFoundException:javax.xml.bind.ValidationException??atjava.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)?[na:na]atjava.base/jdk.internal.loader.ClassLoadersAppClassLoader.loadClass(ClassLoaders.java:190) ~[na:na]
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499) ~[na:na]
二、問題分析
JAXB API是java EE 的API,因此在java SE 9.0 中不再包含這個 Jar 包。
java 9 中引入了模塊的概念,默認情況下,Java SE中將不再包含java EE 的Jar包
而在 java 6/7 / 8 時關于這個API 都是捆綁在一起的
三、解決方案
引入下面依賴即可
jaxb-api maven地址:http://mvnrepository.com/artifact/javax.xml.bind/jaxb-api
jaxb-impl maven地址:http://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-impl
jaxb-core maven地址:http://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-core
activation maven地址:http://mvnrepository.com/artifact/javax.activation/activation
<dependency><groupId>javax.xml.bind</groupId><artifactId>jaxb-api</artifactId><version>2.3.0</version></dependency><dependency><groupId>com.sun.xml.bind</groupId><artifactId>jaxb-impl</artifactId><version>2.3.0</version></dependency><dependency><groupId>com.sun.xml.bind</groupId><artifactId>jaxb-core</artifactId><version>2.3.0</version></dependency><dependency><groupId>javax.activation</groupId><artifactId>activation</artifactId><version>1.1.1</version></dependency>如果加入依賴之后,還是出現(xiàn)這樣的問題的話,可能是你的工程沒有更新,重新build一下,然后把artifacts的工程刪除后,再加載一下就好了!
參考:https://blog.csdn.net/simba1949/article/details/79899431
總結
以上是生活随笔為你收集整理的Caused by java.lang.ClassNotFoundException javax.xml.bind.ValidationException异常的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Error:Cannot build a
- 下一篇: java实现沙箱测试环境支付宝支付(de