1. 개요
jenkins 자체에서 war파일을 만드는 것은 성공하였으나, 이 war 파일을 tomcat 서버에서 실행 시키는 과정에서 에러가 발생하고 있다. 에러 문구는 다음과 같다.
Deployed application at context path /context but context failed to start instead of the expected "OK" message
.....
Build step 'Deploy war/ear to a container' marked build as failure
확인결과 war파일을 tomcat container에 Deploy 하는 과정에서 에러가 발생하고 있음을 알 수 있고, 정확한 원인은 톰캣 로그를 확인해야 한다.
2. 확인
Deploy 과정에서 발생한 로그를 확인해봐야 한다. 배포 과정의 로그가 담긴 tomcat 경로/logs/catalina.log를 확인하여 에러 코드를 확인해보았다.
확인 결과 다음과 같은 에러 로그를 확인할 수 있었다.
Unsupported major.minor version 52.0
오우오우.. 빌드하려는 프로젝트의 컴파일 버전은 1.8(52.0)이나 tomcat에서는 그보다 낮은 jdk 버전으로 빌드를 시도하여 위 에러가 발생하였다. 즉, jdk 1.8은 지원안해요~ 이뜻이다.
3. 해결
(tomcat마다 뭔가 설정을 해주지 않는 한) tomcat은 일반적으로 시스템 변수의 JAVA_HOME을 사용한다.
시스템 변수의 JAVA_HOME을 직접 들어가서 확인해보면 낮은 버전의 JDK 버전이 설정되어 있을 것이다.
이를 jdk 1.8 버전으로 수정하면 된다.
올바르게 수정됐는지 확인하고 싶다면 pc 재부팅 후 javac -version 명령어를 입력해보면 된다.
'CI\CD > Jenkins' 카테고리의 다른 글
[Jenkins] Amazon Linux 2 OS에 Jenkins 설치하기 (0) | 2021.10.25 |
---|---|
[Jenkins] Jenkins 설치 / Window / CentOS7 (0) | 2021.06.10 |
[Jenkins] Server returned HTTP response code: 401 for URL 에러 (0) | 2021.03.01 |
[Jenkins] build시 encoding MS949 경고 해결 (0) | 2021.03.01 |
[Jenkins] javax.servlet.http does not exist 에러 (0) | 2021.03.01 |