Post
EN

잘돌아가던 이클립스 library 오류 발생시 대처 방법

출처 : http://egloos.zum.com/dochi575/v/4691074

잘돌아가던 이클립스에서 톰캣 실행 시 갑자기 class를 찾지 못한다는 오류가 발생하면서,

서버가 정상적으로 실행되지 않는 문제가 한번씩 생기는데…

<Case 1>

    1. 3 오전 11:18:51 org.apache.catalina.core.StandardContext listenerStart

심각: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1688)

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1533)

at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:525)

at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:507)

at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:124)

at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4701)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5260)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1525)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1515)

at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

at java.util.concurrent.FutureTask.run(FutureTask.java:138)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)

at java.lang.Thread.run(Thread.java:662)

<Case 2>

6월 10, 2013 1:54:15 오후 org.apache.catalina.core.StandardContext listenerStart

SEVERE: Error configuring application listener of class org.springframework.web.util.Log4jConfigListener

java.lang.ClassNotFoundException: org.springframework.web.util.Log4jConfigListener

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1713)

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1558)

at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:527)

at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:509)

at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:137)

at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4823)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5381)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)

at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)

at java.util.concurrent.FutureTask.run(FutureTask.java:166)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

at java.lang.Thread.run(Thread.java:722)

두가지 경우 모두 maven dependency를 등록해주면 된다.

프로젝트 » properties » Deployment Assembly를 선택한 후,

“Add” » Java Build Path Entries » Maven Dependencies 선택한 후, “Apply”를 해준다.

톰캣 재시작하면 서버가 정상적으로 실행된다.

메이븐 메뉴에서 “Update Project Configuration”를 실행하는 경우,

해당 정보가 삭제되므로 다시 등록해주면 된다.

This article is licensed under CC BY 4.0 by the author.