jar包执行时的一个错误:javax.persistence.PersistenceException: Unable to resolve persistence unit root URL

前言

由于一些原因,需要将一个在服务器上跑的boot项目弄到本地来跑,将jar包从服务器上下载到本地后,把jar包解压并修改配置后重新打包,然后将其运行的时却报入如下异常:

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 
javax.persistence.PersistenceException: Unable to resolve persistence unit root URL

起初我还以为是我重新打包出错了,但是试了又试,还是这个错误。
这个项目是在服务器的docker里运行的,我试着在docker里重新运行这个项目,执行成功了。
接着我又将该项目拷贝到宿主机中,然后再宿主机看能不能跑起来,结果却失败了,执行日志里提示的异常信息与我本地所提示的异常信息是一样的,顿时懵圈!!!!
由于不会反编译,而且这个项目的源码又没有,只能在网上找方法。
在网上百度了半天,终于找到这个异常的解决方法:
可参考这篇博客:https://www.cnblogs.com/woshimrf/p/5887293.html
从这篇博客中才知道是hibernate自动配置的问题,而该项目中又没有用到hibernate,所以就将jar包中有关hibernate的包删掉后,重新跑起来。
成功运行!!!
尽管还是不懂为什么在docker里为啥就可以成功跑起来,在外面反而不行,希望有大佬可以指点迷津!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值