Software Engineering/Java, JSP

[Eclipse] Solution to 「The default superclass, "jakarta.servlet.http.HttpServlet", according to the project's Dynamic Web Module facet version (5.0), was not found on the Java Build Path.」

iseop 2023. 12. 31. 14:31   인쇄용 버전

 

 이클립스 2023-06 버전에서 Dynamic Web Project를 생성하고 런타임으로 Tomcat 10.1을 사용하는 프로젝트에서 JSP 태그를 작성하면 제목과 같은 오류가 생기는데, 해결 방법을 적어둡니다. 다른 버전도 그런지는 모르겠습니다. 아마 톰캣 버전에 따라서 JSP 관련 클래스의 네임스페이스가 javax에서 jakarta로 바뀌어서 그런 걸로 보입니다.

 

 프로젝트 속성(Properties)에서 Project Facets 화면에서 Dynamic Web Module 항목의 버전을 6.0으로 변경하고 Apply and Close 버튼을 누르면 해결됩니다. 재밌는건 이렇게 해서 오류 마커가 사라지면 모듈 버전을 5.0으로 되돌려도 오류가 다시 생기지 않습니다. 알다가도 모르겠네요