| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
- MariaDB
- 삼성증권
- ibatis
- JDBC
- 티스토리챌린지
- wsdl
- 스레드 덤프
- HTML
- 안드로이드 스튜디오
- Docker
- START WITH
- equals
- 컨트롤러
- java
- oracle
- Database
- API
- cmd
- http
- 스레드
- 키보드
- integer
- 톰캣
- 오블완
- 프로세스
- letterspacing
- Linux
- 영상편집
- MySQL
- Tomcat
- Today
- Total
블로그 이름
[TOMCAT] JAVA 버전 다르게 톰캣 실행하는 방법 본문
하나의 서버에서 여러 프로그램을 띄워야 할 때, 각 프로그램이 요구하는 Java 버전이 다를 경우가 있다.
예를 들어 프로그램 A가 자바 1.8, B가 자바 11을 사용한다면 시스템 전체 Java 버전을 변경하며 실행할 수도, 서버에 하나의 JAVA_HOME 만 둘 수도 없다.
이 경우 톰캣 인스턴스 별로 JAVA_HOME 을 다르게 설정하여 실행하면 된다.
우선 서버에 자바 8과 자바 11 둘 다 설치한다.
C:\Java\jdk1.8.0_202
C:\Java\jdk-11.0.22
이후 톰캣을 2개 설치한다.
C:\tomcatA - Java 8을 사용할 프로그램
C:\tomcatB - Java 11을 사용할 프로그램
이후 톰캣의 bin 폴더 안에 setenv.bat 파일을 생성 (java 버전은 경로에 맞게 적어주면 된다. 톰캣 둘 다 추가해주면 됨)
set "JAVA_HOME=C:\Java\jdk1.8.0_202"
set "JRE_HOME=C:\Java\jdk1.8.0_202"
이후 startup.bat 파일 실행 시, logs 폴더 내 catalina.out 로그 파일에서 자바 버전을 확인 할 수 있다. 각 버전으로 정상 출력된다면 성공이다.
해당 상태에서 바로 실행한다면 포트 충돌 오류가 난다. (톰캣 기본 포트 8080)
conf 폴더 내의 server.xml 서버 수정 필요
<Connector port="8080" />
<Server port="8005"/>
해당 부분의 포트를 tomcatA와 tomcatB가 겹치지 않도록 서로 다른 포트로 변경해주면 된다.
'개발 > 기타' 카테고리의 다른 글
| [Liquibase] context를 설정한 ChangeSet이 실행되지 않는 현상 (0) | 2026.01.07 |
|---|---|
| [JavaScript] setTimeout과 Promise의 실행 순서 및 동작 차이 (1) | 2025.12.16 |
| [WINDOWS] hosts 파일 수정하기 (0) | 2025.09.25 |
| [HAR] HAR 파일 개발자 모드에서 Import, Export 확인 (0) | 2025.09.22 |
| [SMTP] SMTP Bucket 사용하여 SMTP 테스트하기 (0) | 2025.09.21 |