STS에서 Gradle로 Dependency를 관리하면서 생긴 문제 해결
- gradle에서 dependency를 추가하였는데 프로젝트의 reference library에 추가가 되지 않음.
- .gradle 폴더에서 검색해보니 캐시쪽 폴더에 .jar는 정상적으로 가져오는 것을 확인함.
- 프로젝트 우클릭 -> Gradle -> Gradle Dependency management를 enable로 해줘야함..
EntityManager must not be null 오류 문제 해결
- 결과적으로 아래의 의존성이 문제였음.
compile("org.springframework.boot:spring-boot-starter-data-jpa")
//jpa 버전 1.14 @PersistenceContext public void setEntityManager(EntityManager entityManager) { Assert.notNull(entityManager, "EntityManager must not be null!"); this.querydsl = new Querydsl(entityManager, builder); this.entityManager = entityManager; } //jpa 버전 1.18 public void setEntityManager(EntityManager entityManager) { Assert.notNull(entityManager, "EntityManager must not be null!"); this.querydsl = new Querydsl(entityManager, builder); this.entityManager = entityManager; }
//1.18이후로 @PersistenceContext 어노테이션이 사라졌기 때문에 수동으로 엔티티를 설정해줘야함. @Autowired public CustomerRepositoryImpl(JpaContext context){ super(Customer.class); setEntityManager(context.getEntityManagerByManagedType(Follow.class)); }