본문 바로가기

프로그래밍/Error

StackOverflowError로 인하여, 웹 애플리케이션 []에서 annotation 스캔을 완료하지 못했습니다. 가능성 있는 근본 원인…

 

 

톰캣을 실행하다 보면 콘솔에 다음과 같은 에러가 발생하며 톰캣이 실행되지 않는 것을 확인할 수 있습니다.

 

org.apache.catalina.LifecycleException: 구성요소 [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]을(를) 시작하지 못했습니다.

 

 

 

 

 

 

콘솔창을 조금만 아래로 내려보면 다음과 같이 org.bouncycastle 에서  에러가 발생하는 것을 확인할 수 있습니다.

 

Caused by: java.lang.IllegalStateException: StackOverflowError로 인하여, 웹 애플리케이션 []에서 annotation 스캔을 완료하지 못했습니다. 가능성 있는 근본 원인(root cause)들 중의 하나는 -Xss가 너무 적게 설정되어 있거나 불허된 순환 상속 의존관계들일 수 있습니다. 처리되는 클래스의 상속 계층구조는 [org.bouncycastle.asn1.DERInteger->org.bouncycastle.asn1.ASN1Integer->org.bouncycastle.asn1.DERInteger]입니다.

 

 

 

 

해당 에러를 해결하기 위해서는 톰캣 실행 시 jar 파일 스캔 스킵 설정을 추가하거나  충돌하는 jar 파일을 삭제하는 방법이 있습니다. 

 

 

 

 

 

 

 

 

톰캣 실행 시 jar 파일 스캔 스킵 설정 

 

catalina.properties 파일을 열어서 tomcat.util.scan.StandardJarScanFilter.jarsToSkip 부분 맨 아래에 bcprov*.jar 를 추가해 줍니다.  (파일 위치 : 프로젝트 → Servers  Tomcat v9.0 Server at localhost-config  catalina.properties)

 

 

 

tomcat.util.scan.StandardJarScanFilter.jarsToSkip=\
annotations-api.jar,\
ant-junit*.jar,\
------- 생략 ------
bcprov*.jar

 

 

 

 

 

충돌하는 jar 파일 삭제 

 

WebContent > WEB-INF > lib 폴더를 열어서  bcprov*.jar 파일을 찾은 후 사용할 jar 파일만 남기고 제거해 줍니다.

 

 

 

 

 

 

※ 참고

 - https://stackoverflow.com/questions/29955410/how-do-i-fix-stackoverflowerror-in-org-apache-catalina-startup-contextconfig-pop

 

How do I fix StackOverflowError in org.apache.catalina.startup.ContextConfig.populateSCIsForCacheEntry in Tomcat 7.0.35

We are running an old version of Tomcat, and a new web application has caused a stack trace like this Caused by: java.lang.StackOverflowError at org.apache.catalina.startup.ContextConfig.

stackoverflow.com

- https://stackoverflow.com/questions/23927880/avoid-cyclic-reference-inheritance-in-grails

 

Avoid cyclic reference inheritance in grails

I have a big project written in Grails 2.3.8. Sometimes when I deploy it using my CI I got this message: Unable to complete the scan for annotations for web application [/ProjectName##1152] due to a

stackoverflow.com