코알못

Tomcat, Intellij, Gradle 관련 기본 내용 정리 본문

ETC

Tomcat, Intellij, Gradle 관련 기본 내용 정리

코린이s 2025. 2. 10. 12:38
728x90

Maven, Tomcat, IntelliJ 설정 및 활용법

1. Maven package와 install의 차이

공통점

  • 두 명령어 모두 소스 코드를 컴파일하고 JAR 파일을 생성한다.

차이점

  • mvn package : 프로젝트를 빌드하고, 타겟 디렉토리에 .jar 또는 .war 파일을 생성한다.
  • mvn install : package 단계까지 수행한 후, 생성된 JAR/WAR 파일을 로컬 저장소(~/.m2/repository)에 저장한다.

2. Maven과 Gradle의 로컬 저장소 경로

  • Maven: ~/.m2/repository
  • Gradle: ~/.gradle/caches

Maven과 Gradle은 의존성을 다운로드할 때, 먼저 로컬 저장소에서 찾고, 없을 경우 원격 저장소에서 가져온다.

3. Tomcat을 여러 개 띄우는 방법

1) Tomcat 복사 후 설정 변경

  • {TOMCAT_HOME}/conf/server.xml 수정
    1. Shutdown 포트 변경
      <Server port="8007" shutdown="SHUTDOWN">
      
    2. 서버 포트 변경
      <Connector port="8082" protocol="HTTP/1.1"
          connectionTimeout="20000"
          redirectPort="8443"
          maxParameterCount="1000" />
      

2) WAR 파일 배포 및 컨텍스트 설정

  • webapps 디렉토리에 [컨텍스트명].war 파일을 배포
  • 예제 URL:
    • localhost:8082/[컨텍스트명]/[서블릿URL]
    • 기본 URL로 설정하려면 ROOT.war로 배포

4. IntelliJ에서 Tomcat Deployment 방식 비교

1) test:war

  • WAR 파일을 메모리에 바로 올려 실행
  • 클래스나 리소스를 변경해도 서버 재기동 전까지 반영되지 않음

2) test:war exploded

  • WAR 압축을 푼 디렉토리를 직접 바라봄
  • 수정 즉시 반영됨 (서버 재기동 불필요)
  • File > Project Settings > Artifacts > test:war exploded 설정 필요

5. Tomcat에서 catalina.sh start로 서버 기동 시 변경 사항 반영 여부

  • JSP 파일 변경: Tomcat이 자동으로 재컴파일하여 반영됨
  • 클래스 파일 변경: 변경사항이 반영되지 않음 (WAR 파일을 다시 배포해야 반영됨)

6. catalina.sh vs start.sh

  • catalina.sh : start, stop, status 등의 명령어로 Tomcat을 제어 가능
  • start.sh : 내부적으로 catalina.sh start 실행하는 스크립트

7. IntelliJ Tomcat 설정에서 On update action과 On frame deactivation 차이

  • On update action: 서버 기동 상태에서 파일 수정 시 처리 방법
  • On frame deactivation: 파일 수정 후 브라우저 창으로 이동했을 때 처리 방법

8. IntelliJ Tomcat 설정에서 각 옵션별 속성

test:war

  • Hot swap classes: 클래스 변경 사항만 반영 (JSP 반영 안 됨)

test:war exploded

  • Update classes and resources: 클래스 & 리소스(JSP) 변경 즉시 반영
  • Update resource: 리소스(JSP) 변경 즉시 반영

9. IntelliJ에서 Tomcat 설정하는 방법

1) 설정 경로

  • Edit Configurations > + 버튼 > Tomcat 추가

2) Server 탭 설정

  • 설치한 Tomcat 선택
  • After launch 체크 시 자동 브라우저 실행
  • JVM 옵션 설정 가능
    -Dtest=123
    
  • HTTP 및 JMX 포트 설정 가능

3) Deployment 탭 설정

  • + 버튼 클릭 후 test.war:exploded 또는 test.war 선택
  • 기본 경로를 /로 설정하려면 Application context를 /로 변경
  • test:war exploded 방식 추천 (수정 사항 즉시 반영 가능)

10. IntelliJ Tomcat 기동 시 설정 경로

  • Tomcat Home: 설치된 Tomcat의 경로 유지
  • Tomcat Base: 프로젝트마다 설정 파일만 따로 저장하는 로컬 디렉토리 사용
728x90
Comments