0. 증상

  • list.jsp 수정했는데 브라우저엔 이전 화면 그대로.

  • 콘솔에 재시작 감지 없음.


1. 자동 빌드 켜기 (STS/Eclipse)

  • Project → Build Automatically 체크
  • 수동이라면 Project → Clean… → Clean all

이유: JSP는 /src/main/webapptarget/로 복사돼야 적용됨. 자동 빌드 꺼져 있으면 복사가 안 됨.


2. DevTools 추가 + 재시작 감지 경로 등록

pom.xml에 devtools 있는지 확인

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-devtools</artifactId>
  <scope>runtime</scope>
</dependency>

application.yml에 웹앱 폴더 감지 추가

spring:
  devtools:
    restart:
      additional-paths: src/main/webapp

이유: 기본 감지는 src/main/java, resources 위주. JSP는 감지 제외라 추가해야 함.


3. JSP 개발 모드로 캐시 끄기

application.yml

server:
  servlet:
    jsp:
      init-parameters:
        development: true

이유: 톰캣의 JSP 캐시/컴파일 최적화를 꺼서 파일 변경 시 즉시 재컴파일하게 함.


4. 뷰 경로/패키징 재확인

application.yml

spring:
  mvc:
    view:
      prefix: /WEB-INF/jsp/
      suffix: .jsp
  • prefix 앞 슬래시(/), 뒤 슬래시(/) 확인.

  • Packaging: War (현재 설정) + 임베디드 톰캣이면 JSP 동작 문제 없음.


5. 실행 방식

  • Run As → Spring Boot App (IDE에서 실행)

  • 수정 후: 저장(CTRL+S) → 자동 빌드 → devtools 재시작/리로드

  • 그래도 안 바뀌면: 브라우저 강력 새로고침 (Ctrl+F5)


6. 여전히 안 되면 — 빠른 진단

  1. target에 복사됐나?

    • target/springfolio-jsp/WEB-INF/jsp/list.jsp(유사 경로) 타임스탬프 최신?
  2. 콘솔 로그

    • Restarting due to …(devtools) 메시지 뜨는지 확인
  3. 리소스 필터 제외

    • 워크스페이스에 exclude 필터가 /webapp를 막고 있지 않은지
  4. IDE 캐시 문제

    • STS 재시작 or Project → Maven → Update Project…

7. 추천 세팅(요약)

  • Build Automatically ✅

  • DevTools ✅

  • spring.devtools.restart.additional-paths=src/main/webapp ✅

  • server.servlet.jsp.init-parameters.development=true ✅

0개의 댓글