국비학원 공부노트/JSP

[Java JSP] 에러: org.apache.jasper.JasperException: JSP를 위한 클래스를 컴파일할 수 없습니다.

hyeseo 2022. 2. 19. 19:18

[ 개발환경 ]

MacBook Air M1 2020년형 

eclipse [2021-3 ver]

Java [zulu-8]

JSP

Tomcat [Apache Tomcat/9.0.58]

 

MacBook Air M1 // Java JSP로 파일 업로드 구현 중 해결한 걸 정리하는 목적으로 작성하는 글입니다..


오류 : org.apache.jasper.JasperException: JSP를 위한 클래스를 컴파일할 수 없습니다.

 

해결방법 (2가지)

 

 

1. 운영체제에 맞는 절대경로의 슬래시를 사용합니다. (절대경로의 단점 때문에 2번 방법을 추천합니다.)

String path = request.getServletContext().getRealPath("/폴더명");

위 코드는 절대경로로 설정합니다.

Mac 에서는 ("/폴더명"), Windows 에서는 ("\폴더명") 로 슬래시 방향을 다르게 해야합니다.

( 이미 이클립스에 빨간줄과 함께 Invalid unicode 에러가 보일겁니다...)

 

 

 

 

2. 상대경로로 코드를 수정합니다. (추천)

 

1. Session

String path = request.getSession().getServletContext().getRealPath("폴더명");

2. application

String path = application.getRealPath("폴더명");

 

상대경로로 지정하는 코드로 변경하면 운영체제나 경로가 변경되어도 유연하게 대처할 수 있습니다.