오류를 발견하고 원인을 🙄 찾아내는 과정은 매우 고통스럽지만.. 알고나면 너무 허무한 JPA 관련 오류들을 모아볼게요
org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl handleException WARN: GenerationTarget encountered exception accepting command : Error executing DDL " drop table Order if exists" via JDBC Statement
- 기존에 있던 TABLE 들을 모두 날려주고(DROP) 실행해 본다.
나는 이 글을 작성하는 이 시점에 3번째 해결방안을 검토해서 해결했다.
난 테이블 이름이 Order
여서..(Order는 OrderBy
sql의 예약어임) @Table
애노테이션에 name 옵션을 줘서 해결했다.
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>5.4.13.Final</version>
</dependency>
The following method did not exist: 'void org.hibernate.annotations.common.reflection.ReflectionManager.reset()'
이건 Hibernate Error 인데, 우리는 JPA 를 이미 dependency로 가지고 있기 때문에 hibernate-core
와 hibernate-annotations
사이에 dependency conflict 를 내는것임.
아무튼 무작정 hibernate 관련 dependency는 추가하지 말것 !!
import com.jpa.just.wrong.Member; // 잘못된 entity import
public interface MemberRepository extends JpaRepository<Member, Long>{}
Inferred type 'S' for type parameter 'S' is not within its bound;
처음보는 에러라 당황했는데, 내가 작업하고 있는 환경이 MemberEntity
를 두개 가지고 있는 환경이여서 import가 잘 못 해서 발생한 문제였다.