반응형
SMALL

프로젝트 아이콘에 표시나고 에러나더라고...

에러 표시남

Java compiler level does not match the version of the installed Java project facet.

자바 버전이 안맞는다네...

자바 버전을 cmd 에서 확인해봅니다.

java -version

버전 8인데 17로 설정되어 있었음.

 properties > Project Facets > Java 를 자신이 사용하고있는 컴파일러 버전과 맞추어주도록하자.

자바 버전 맞추기(사진은 퍼옴)

1.8로 맞춰서 설정하니 에러 사라짐.

이젠 된다네~

반응형
LIST
반응형
SMALL

갑자기 잘 되던 프로젝트가 404가 뜬다.

Eclipse에서 Tomcat 구동 에러다. maven 사용하면 종종 발생하는 에러라고 한다.

404 뜸
에러메시지

심각: 클래스 [org.springframework.web.context.ContextLoaderListener]의 애플리케이션 리스너를 설정하는 중 오류 발생
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1420)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1228)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:533)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:514)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:149)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4686)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5232)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1427)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1417)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

잘 돌아가던 이클립스에서 톰캣이 갑자기 class를 못찾고 오류가 발생한다는 것.

또는 아래처럼 발생하기도 한다.

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)

두 경우 다 naven dependency를 등록해주면 된다.

프로젝트 우클릭 > properties > Deployment Assembly > add... > Java Build Path Entries > Maven Dependencies

maven dependency를 등록

적용 후 서버 재시작하면 정상적으로 실행된다.

Maven 메뉴에서 "Update Project Configuration"를 실행하는 경우, 해당 정보가 삭제되므로 다시 등록해주면 된다.

워낙 톰캣을 많이 써서... 포트 번호 안겹치게 맞춰주고, Build Path도 톰캣 8.5 버전으로 잘 맞춰줬는데 안되더라.
포트 번호 안겹치게

Build Path도 톰캣 8.5 버전

 String cannot be resolved to a type 에러가 뜨면 JDK 작동이 안되어서 자바 코드를 못읽는 것이니 확인...

혹시 모르니 또 톰캣에 404가 뜨면 Build Path와 포트와 라이브러리도 신경쓰자.

반응형
LIST
반응형
SMALL

+ Recent posts

반응형
LIST