我正在尝试在tomcat中部署一个spring boot应用程序(捆绑为war)。启动tomcat时,它会抛出错误
Post-processing of merged bean definition failed; nested exception is java.lang.NoSuchMethodError: javax.persistence.PersistenceContext.synchronization()Ljavax/persistence/SynchronizationType
我知道这可能是因为在运行时找不到方法,或者 tomcat 正在加载其他一些没有此方法的 jar。我检查了tomcat试图从哪里加载这个模块,它是从正确的jar文件加载的。
[Loaded javax.persistence.SynchronizationType from file:/home/ubuntu/apache-tomcat-8.5.33/webapps/myapp%23%23003/WEB-INF/lib/hibernate-jpa-2.1-api-1.0.0.Final.jar]
我不确定为什么我仍然收到此错误。
更新
以下是我与 JPA 和休眠相关的依赖项
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>com.vladmihalcea</groupId>
<artifactId>hibernate-types-52</artifactId>
<version>2.2.1</version>
</dependency>