log4j 적용 오류
- 작성자 :
- 개*
- 작성일 :
- 2021-12-13 11:53:48
- 조회수 :
- 3,486
- 구분 :
- 기타
- 진행상태 :
- 완료
Q
jar 교체, jndLookup 클레스를 classpath에서 제거 둘 다 시도해 봤는데 오류가 발생합니다.
1. jar 교체
log4j-api-2.15.0.jar
log4j-core-2.15.0.jar
로 교체후 서버 재기동 오류.
심각: Exception sending context destroyed event to listener instance of class org.springframework.web.context.ContextLoaderListener
java.lang.NoClassDefFoundError: org/apache/logging/log4j/util/ReflectionUtil
at org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:42)
at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:47)
at org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:29)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:277)
at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:155)
at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:132)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:657)
at org.springframework.web.context.ContextCleanupListener.<clinit>(ContextCleanupListener.java:43)
at org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoaderListener.java:116)
.log4j-core-2.15.0.jar가 존재하는데도 아래와 같은 오류 발생
2. jndLookup 클레스를 classpath에서 제거
zip –q –d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
zip warning: name not matched: –d
zip warning: name not matched: org/apache/logging/log4j/core/lookup/JndiLookup.class
updating: log4j-core-2.5.jar (deflated 12%)
1. jar 교체
log4j-api-2.15.0.jar
log4j-core-2.15.0.jar
로 교체후 서버 재기동 오류.
심각: Exception sending context destroyed event to listener instance of class org.springframework.web.context.ContextLoaderListener
java.lang.NoClassDefFoundError: org/apache/logging/log4j/util/ReflectionUtil
at org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:42)
at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:47)
at org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:29)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:277)
at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:155)
at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:132)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:657)
at org.springframework.web.context.ContextCleanupListener.<clinit>(ContextCleanupListener.java:43)
at org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoaderListener.java:116)
.log4j-core-2.15.0.jar가 존재하는데도 아래와 같은 오류 발생
2. jndLookup 클레스를 classpath에서 제거
zip –q –d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
zip warning: name not matched: –d
zip warning: name not matched: org/apache/logging/log4j/core/lookup/JndiLookup.class
updating: log4j-core-2.5.jar (deflated 12%)
환경정보
-
- OS 정보 : 리눅스
- 표준프레임워크 버전 : 3.6
- JDK(JRE) 정보 : 1.8
- WAS 정보 : tomcat7
- DB 정보 : oracle
- 기타 환경 정보 :
A
안녕하세요.
표준프레임워크센터 입니다.
1번의 경우 의존성에 따라 발생할수 있습니다.
센터에서 테스트시에는 문제가 없었으나
사용하시는 추가 라이브러리 또는 환경에 따라 발생할수 있을듯 합니다.
2번의 경우는
해당 log4j-core-2.X.Xjar파일을 내려 받아서
다른 압축해제 유틸리티로 압축을 푼다음
JndiLookup.class를 제거후 원래 파일명으로 압축을 한다음
교체 하셔도 됩니다.
개발시 다양한 라이브러리가 추가로 적용되어 있을수 있으므로
반드시 개발환경이나 테스트베드환경에서 확인후 운영서버에 반영해야 합니다.
다음은 자주묻는 질문을 확인하실수 있습니다.
https://www.egovframe.go.kr/home/faqinfo/faqinfoRead.do?pagerOffset=0&searchKey=&searchValue=&menuNo=68&faqId=FAQ_0000000000000812
감사합니다.
표준프레임워크센터 입니다.
1번의 경우 의존성에 따라 발생할수 있습니다.
센터에서 테스트시에는 문제가 없었으나
사용하시는 추가 라이브러리 또는 환경에 따라 발생할수 있을듯 합니다.
2번의 경우는
해당 log4j-core-2.X.Xjar파일을 내려 받아서
다른 압축해제 유틸리티로 압축을 푼다음
JndiLookup.class를 제거후 원래 파일명으로 압축을 한다음
교체 하셔도 됩니다.
개발시 다양한 라이브러리가 추가로 적용되어 있을수 있으므로
반드시 개발환경이나 테스트베드환경에서 확인후 운영서버에 반영해야 합니다.
다음은 자주묻는 질문을 확인하실수 있습니다.
https://www.egovframe.go.kr/home/faqinfo/faqinfoRead.do?pagerOffset=0&searchKey=&searchValue=&menuNo=68&faqId=FAQ_0000000000000812
감사합니다.