为了账号安全,请及时绑定邮箱和手机立即绑定

GirlServiceTest运行报错

Assert.assertEquals(new Integer(13), age);//这句话的Integer中间有个横线,好像是不能用的意思

报错是报下面的错

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.

2018-05-28 10:44:04.649 ERROR 1572 --- [           main] o.s.boot.SpringApplication               : Application run failed


org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException


正在回答

2 回答

如果是java 8及以下jdk版本,在maven中添加dom4j的依赖即可,如下:

<dependency>
    <groupId>dom4j</groupId>
    <artifactId>dom4j</artifactId>
    <version>2.1.0</version>
</dependency>

如果是java se 9(即jdk 9)及以上版本,需要在maven中同时添加以下几个依赖:

<dependency>
    <groupId>dom4j</groupId>
    <artifactId>dom4j</artifactId>
    <version>2.1.0</version>
</dependency>
<dependency>
    <groupId>jaxen</groupId>
    <artifactId>jaxen</artifactId>
    <version>1.1.6</version>
</dependency>
<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-core</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>javax.activation</groupId>
    <artifactId>activation</artifactId>
</dependency>

我使用的是jdk 10,当时测试也遇到此问题,自己根据提示添加了dom4j的依赖,但是还是同样抛出该异常,后找寻答案发现是因为在java易主后,java se 9以后的版本不在支持jaxb-api导致,需要单独添加jaxb的支持。

1 回复 有任何疑惑可以回复我~
#1

牙膏牙膏牙膏 提问者

非常感谢!
2018-06-26 回复 有任何疑惑可以回复我~

你可以看一下你的实体类中的这个age是什么类型的,是不是写错了。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

GirlServiceTest运行报错

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信