我试图在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>