본문 바로가기
Today I Learned

[이클립스] JSP파일 내 The superclass "jakarta.servlet.http.HttpServlet" was not found on the Java Build Path 에러

by Davidev 2023. 7. 25.
반응형
The superclass "jakarta.servlet.http.HttpServlet" was not found on the Java Build Path

 

 

 

 

 

문제의 발단

 

새로운 연습용 프로젝트를 생성하고 기본 환경을 구축하려고 하는데 아무것도 생각이 나지 않았다..

 

작업 디렉토리 내 WebContent 경로에 JSP파일만 생성 했더니 아래와 같은 에러가 발생한다.

 

 

 

 

 

 

 

 

 

 

 

 

문제의 이해

 

Build Path에서 "jakarta.servlet.http.HttpServlet"를 못 찾겠다는 뜻으로 알아먹고

 

라이브러리가 없나보다.. 생각이 들었다.

 

어떤 라이브러리가 필요한지 전혀 생각이 안나는데 Servlet 관련된 뭐겠거니 하고 구글링을 시작했다..

 

 

 

 

 

 

 

문제 해결 시도1

 

 

무슨 자신감에서 나온 것인지는 모르겠지만 무작정 다른 프로젝트에서 standard.jar 파일을 가져와서

 

WebContent  -  Web-INF  -  lib  경로에 넣어주고 이클립스를 재구동한 다음 refresh 를 살며시 눌러주었지만

 

아무 일도 일어나지 않았다...

 

 

 

 

 

 

 

문제 해결 시도2

 

 

구글링을 하다보니 서버 런타임을 설치해야 한다고 언뜻 보아서 '아 맞다 서버...!!' 라고 중얼거리며

 

머릿속으로는 유레카를 외치곤 바로 8.5톰캣 서버를 추가해주었다.

 

그리고나서  이클립스를 재구동한 다음 refresh 를 살며시 눌러주었지만

 

아무 일도 일어나지 않았다...

 

 

 

 

 

 

 

문제 해결 시도3

 

 

또 다시 구글링을 하다가 Build Path에 서버 런타임을 추가해주지 않은 것이 떠올라서

 

'아 나 바보인가..' 하고 프로젝트의 Build Path에 서버 런타임을 추가 해주었다.

 

 

 

Server Runtime Libraries를 추가 해주는 이 부분이 핵심입니다!!

 

 

 

 

 

그리고나서  이클립스를 재구동한 다음 refresh 를 살며시 눌러주었지만 역시 아무 일도 일어나지 않았다...

 

"아씨 대체 뭐지..." 하고 졸면서 렘수면 상태로 구글링하며 1시간을 날리고 나서

 

JSP파일을 만지작거리다가 의미없는 페이지 내 변동사항을 만들어 (뭐라도 하는 척..  의미없는 분노의 타이핑...)

 

컨트롤 + S 를 눌러 저장한 순간..  에러 메시지가 사라진 것을 느꼈다....!!!!!!!!!! 

 

 

 

 

 

 

 

 

 

 

정리

 

 

JSP의 특성에 대해 조금 이해가 필요했던 것 같다.(사실 까먹었었다...)

 

JSP는 Java Server Page로써 서버에서 Java로 변환(이후 class로 변환)되기 때문에 

 

Server에서 구동되기 위한 실행 환경 및 각종 라이브러리가 필요하다.

 

 

 

프로젝트 우클릭  -  Properties 클릭  -  Java Build Path 탭  -  Libraries 탭에  Server 추가 

 

 

 

이클립스 상태에 따라 바로 적용이 안되기도 하니 바로 안되는 경우엔

 

Refresh 한 번 해주고, JSP 파일을 살짝 바꿔 저장해보기도 하면 될 것 같다.

반응형

댓글