이클립스 웹 어플리케이션 프로젝트 구성 이해하기
Servlet 스펙이 따르면 웹 어플리케이션의 구성은 대략 다음과 같습니다.
이러한 웹 어플리케이션은 WAR 형태로 WAS(예를 들어 톰캣) webapps 하위에 배포되게 됩니다.
자세한 설명은 다음의 글을 참고합니다. -> [서블릿/JSP] 웹 어플리케이션 개념 및 웹 어플리케이션 경로 규칙
이클립스 웹 어플리케이션 프로젝트 구성
그러나 우리의 이클립스는 너무 친절한 나머지 웹 어플리케이션 프로젝트 구조를 제멋대로 바꾸어 버립니다.
물론 개발의 편의를 위해 역할에 따라 src와 webContent 혹은 webapp 로 나누어 프로젝트를 생성하는데 규칙을 잘 모르는 초급 개발자나 intelliJ 등의 다른 IDE를 사용하다 이클립스로 넘어온 개발자라면 당황하는 경우도 있습니다.
톰캣의 경우 webapps 하위에 웹 어플리케이션이 배포되며 여기서는 webapps/testProject가 웹 어플리케이션의 컨텍스트 루트 경로가 됩니다. 우측 이클립스 프로젝트의 경우는 메이븐 설정이나 프로젝트 explorer 뷰에 따라서 구조가 조금씩 다를 수 있는데 대략적으로 위와 같이 구성됩니다.
src로 시작하는 경로는 java 소스와 패키지가 만들어지는 곳으로 tomcat의 웹어플리케이션/WEB-INF/classes가 src에 해당합니다.
프로젝트에 따라 src/main/java가 될 수도 있습니다.
또한 WebContent는 정적 자원들(jsp, css, html, image file..)과 WEB-INF 등이 들어가는 곳인데 tomcat의 웹어플리케이션경로 에 맵핑됩니다.
규칙이 뒤죽박죽이기 때문에 헷갈릴 수 있지만 여러번 보다 보면 익숙해집니다.
우리는 프로젝트를 구성하거나 진행하면서 이러한 규칙을 알고 개발에 임해야 합니다.
그럼 이클립스에 연동한 개발용 서버는 어디에 있는걸까요?
우리가 개발하는 도중에 Run AS -> Run on Server 를 통해 실행되는 서버는 실제 설치된 톰캣 서버가 아닙니다.
그렇다면 분명 어딘가에 개발중인 프로젝트가 배포되는 경로가 있을텐데 이것에 대한 부분은 다음의 링크를 찹고하도록 합니다.
'이클립스[Elipse]' 카테고리의 다른 글
[이클립스] 이클립스 그레이들(GRADLE) 프로젝트 환경 셋팅 (0) | 2018.02.21 |
---|---|
[이클립스] 이클립스 실행시 반응 없거나 로고만 잠깐 나오고 튕기는 경우 (0) | 2018.02.20 |
[이클립스] 이클립스 자동 빌드(Auto Build) 끄기 (0) | 2018.02.18 |
[이클립스] 이클립스 웹 어플리케이션 프로젝트 배포 경로 (0) | 2018.02.17 |
[이클립스] eclipse 자바 클래스 getter, setter, toString 메서드 쉽게 만드는 방법 (0) | 2018.02.02 |