[SPRING] NoSuchMethodError 오류가 세션 팩토리를 생성합니다.
SPRINGNoSuchMethodError 오류가 세션 팩토리를 생성합니다.
최대 절전 모드와 함께 프로젝트를 만들려고 노력하고 있는데 행에 예외가 있는데 세션 팩토리를 만들면이 행을 삭제하면 프로젝트가 성공적으로 실행됩니다. 나는이 기사를 읽고 해결할 수있는 검색을했고, 의존성을 최대 절전 모드로 만들었다. 그러나 이것은 문제를 해결하지 못한다.
Caused by: java.lang.NoSuchMethodError: org.hibernate.annotations.common.reflection.java.JavaReflectionManager.injectClassLoaderDelegate(Lorg/hibernate/annotations/common/reflection/ClassLoaderDelegate;)V
at org.hibernate.boot.internal.MetadataBuilderImpl$MetadataBuildingOptionsImpl.generateDefaultReflectionManager(MetadataBuilderImpl.java:737)
at org.hibernate.boot.internal.MetadataBuilderImpl$MetadataBuildingOptionsImpl.<init>(MetadataBuilderImpl.java:709)
at org.hibernate.boot.internal.MetadataBuilderImpl.<init>(MetadataBuilderImpl.java:127)
at org.hibernate.boot.MetadataSources.getMetadataBuilder(MetadataSources.java:135)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:655)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:724)
at com.secure.dao.impl.UserDaoImpl.<init>(UserDaoImpl.java:20)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147)
줄은 :
at com.secure.dao.impl.UserDaoImpl.<init>(UserDaoImpl.java:20)
코드에서 행과 같습니다.
private SessionFactory sessionFactory = new Configuration().configure("hibernate.cfg.xml").buildSessionFactory();
의존성
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>4.0.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>4.0.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>4.0.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-taglibs</artifactId>
<version>4.0.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>5.0.1.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.0.1.Final</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.4-1203-jdbc42</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.12</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>3.2.0.Final</version>
</dependency>
</dependencies>
해결법
-
==============================
1.Hibernate v3.6부터 annotations 클래스가 core로 병합되었다. Hibernate core 5.0.1로 컴파일되지 않는 아주 오래된 주석 jar에 의존성을 지정했다.
Hibernate v3.6부터 annotations 클래스가 core로 병합되었다. Hibernate core 5.0.1로 컴파일되지 않는 아주 오래된 주석 jar에 의존성을 지정했다.
hibernate-commons-annotations에 대한 의존성을 제거하면이 문제를 해결해야한다.
from https://stackoverflow.com/questions/32672051/nosuchmethoderror-error-create-session-factory by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 동작을 형성하기위한 컨텍스트 경로를 추가하는 Spring MVC (0) | 2019.05.01 |
---|---|
[SPRING] WSO2 ESB 4.6.0의 Spring Mediator에 대한 실제 예제 (0) | 2019.05.01 |
[SPRING] Spring @Value ( "$ {}")는 종종 null입니다. (0) | 2019.05.01 |
[SPRING] Spring의 요청 매개 변수에 특수 문자를 보내는 방법 (0) | 2019.05.01 |
[SPRING] 연결 풀링을 위해 Hibernate, Spring 및 Apache dbcp를 구성하는 방법은 무엇입니까? (0) | 2019.05.01 |