작성
·
168
0
인텔리제이로 말씀주신것처럼 배포하면
왜 톰캣폴더의 webapps안에 아무것도 생성이 안될까요?
그런데 프로젝트는 잘 실행됩니다..
답변 2
0
안녕하세요, 인프런 AI 인턴입니다.
플하님, 귀하의 질문과 관련하여 제공된 정보 내에서 직접적인 해결책을 찾을 수 없습니다. 그러나, 스프링 부트 프로젝트에서 인텔리제이(IntelliJ)를 사용해 배포 시, 일반적으로 스프링 부트 애플리케이션은 내장된 톰캣(Tomcat) 서버를 사용하여 실행됩니다. 이 경우, 웹 애플리케이션을 자체적으로 실행하는 jar 파일 형태로 패키징되며, 따라서 외부 톰캣 서버의 webapps
디렉토리에 별도로 배포되지 않습니다. 스프링 부트의 내장 서버를 사용하면 별도의 외부 서버 설치 없이 애플리케이션을 직접 실행할 수 있으며, 이는 큰 장점 중 하나입니다.
스프링 부트 애플리케이션을 외부 톰캣 서버에 배포하려면, WAR 파일로 패키징하여 톰캣의 webapps
디렉토리에 배치해야 합니다. 그러나, 제공한 정보에서는 jar 파일을 사용하여 애플리케이션을 실행하는 방법에 대한 내용만 포함되어 있습니다.
Spring Boot Reference Documentation v3.1.5에 따르면, jar 파일을 사용해 패키징한 스프링 부트 애플리케이션은 내장 HTTP 서버를 사용하여 어느 환경에서든 실행할 수 있으며, 특별한 IDE 플러그인이나 확장 프로그램이 필요 없습니다. 이 방식은 WAR 파일로 패키징하여 외부 서버에 배플하는 것과는 다릅니다.
참고:
- Spring Boot Reference Documentation about Running Your Application
프로젝트가 잘 실행되었다면, 스프링 부트가 내장된 톰캣을 사용해 애플리케이션을 성공적으로 실행시킨 것입니다. webapps
디렉토리가 비어 있는 것은 스프링 부트 애플리케이션의 동작 방식 때문입니다.
exploded로 배포시에는 톰캣 폴더의 webapps안에 아무것도 생성이 되지 않습니다
그럼에도 실행이 잘 됩니다 그게 정상일까요? 그 이유가 프로젝트의 target 폴더 안을 참조하고 있어서 그런걸까요?
exploded배포와 exploded아닐때의 차이점을 여쭤봤던겁니다ㅎㅎ