解决Caused by: java.lang.ClassNotFoundException: javax.persistence.Entity问题

问题

Spring3.0.0.RELEASE搭配Hibernate3.3.2.GA,构建事务案例,启动报错。

日志异常如下:

Caused by: java.lang.ClassNotFoundException: javax.persistence.Entity
Caused by: java.lang.NoClassDefFoundError: javax/persistence/Entity
	at org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean.<init>(AnnotationSessionFactoryBean.java:90)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:126)
	... 27 more
Caused by: java.lang.ClassNotFoundException: javax.persistence.Entity
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 33 more

分析

从ClassNotFoundException,初步判定是少导了jar。不管百度还是google,大部分的答案都是下载 ejb3-persistence.jar。

但是,坑爹的是,找到ejb3-persistence.jar这个jar在mavenRepository里面对应的地址,却根本无法下载。不过,其中一篇文章倒是给我提供了一个思路:JPA的jar包。

于是,我就去mavenRepository,找spring-orm的依赖(eclipse中并没有自动导入):

 

解决

在pom文件中导入对应的依赖即可。

        <dependency>
			<groupId>javax.persistence</groupId>
			<artifactId>persistence-api</artifactId>
			<version>1.0.2</version>
		</dependency>

 

文章结束。

 

 

 

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值