[Intellij]Gradle war(exploded) 오류

wheezy·2021년 12월 7일
1

Intellij

목록 보기
1/1

Intro

전날까지 잘되던 프로젝트가 다음날 출근해서 실행을 해보니 아래와 같은 오류가 떴다.
configuration error가 뜨면서 gradle: .war(exploded)이 유효하지 않다는 거였다😐

📌 먼저 간단히 흐름에 대해서 짚고 넘어가자

Tomcat과 같은 WAS에서 우리가 개발한 WebApplication을 구동하기 위해서는 WebApplication을 war 혹은 war(exploded)로 배포하여 Tomcat에서 실행해야한다.

War 파일이란?

  • WepApplication Archive의 약자로 웹어플리케이션을 압축하여 저장해놓은 형태이다.
  • 개발한 웹어플리케이션을 WAS(Tomcat)에서 동작할 수 있는 구조를 담고 있다.
  • 아카이브(.war,ear)는 WAS(Tomcat)에 의해 자동으로 압축이 해제된다.
  • 파일이 많은 경우 압축을 푸는 시간이 오래 걸릴 수 있다.
  • 원격 서버에 배포 시 한 개의 파일만 전송하면 된다.

War(exploded) 파일이란?

  • 아카이브를 압축 해제하여 디렉토리 형태로 배포한다.
  • 원본 소스를 건드리지 않고 그대로 배포하는 경우에 적합하다.
  • 별도 디렉토리에 원본 소스를 복사하여 만들기 때문에 파일이 많은 경우 복사하는 시간이 오래 걸릴 수 있다.

Error

Intellij 상단 메뉴에 Run에서 Edit Configurations...를 들어가서 Deployment를 누르면 배포관련 설정이 나온다. 아래 사진과 같이 Gradle war(exploded)파일 관련해서 빨간색으로 에러가 뜬것을 볼 수 있다

Solution

war(exploded)파일을 제거하고 다시 생성하면 해결 할 수 있는 문제였다.
Deploy at the server startup에 있는 war(exploded)파일을 제거하고 +를 에서Artifact를 눌러 exploded파일을 다시 추가하면 된다.
그렇면 아래의 그림처럼 제대로 생성이 된것을 볼 수 있다.

참고로 Application context가 복잡하다면 자신이 원하는 텍스트로 대체할 수 있다.

참고

https://goddaehee.tistory.com/247

profile
🧀 개발을 하면서 도움이 되었던 부분을 기록하는 공간입니다 🧀

0개의 댓글