[웹호스팅] 배포시 에러 - 스펙부터 확인하자
본프로젝트는 당연히 한번에 배포가 성공하지 못했고
어느 부분의 문제인지 찾아내기 위해서
get요청시 index.html를 리턴하는 컨트롤러 또는 문자열을 반환하는 rest컨트롤러가 있는
아주 간단한 스프링부트 만들어서 빌드 후 cafe24의 톰캣에 배포하였다.
결과는? 실패!
아니 이정도의 간단한 프로젝트도 배포에 실패를 한다고? 대체 뭐가 문제야
겨우 이걸로 하루를 꼬박 날렸는데 톰캣의 log를 보니 대강 어떤 문제인지 알게 되었다.
22-Jun-2022 10:11:15.559 경고 [xxxxx.cafe24.com-startStop-1] org.apache.tomcat.util.descriptor.web.WebXml.setVersion Unknown version string [4.0]. Default version will be used.
22-Jun-2022 10:11:15.560 경고 [xxxxx.cafe24.com-startStop-1] org.apache.tomcat.util.descriptor.web.WebXml.setVersion Unknown version string [4.0]. Default version will be used.
22-Jun-2022 10:11:16.502 정보 [xxxxx.cafe24.com-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
1. web.xml을 찾는 듯한데, 스프링부트에는 web.xml이 없다.
서블릿 3.0 이상에서 web.xml는 WebApplicationInitializer 인터페이스가 web.xml을 대신할 수 있게 되었다.
그래서 스프링부트의 경우 외부 tomcat에서 동작하기 위해서는 WebApplicationInitializer를 구현한
SpringBootServletInitializer를 상속을 하면 web.xml을 대신할 수 있기 때문에 굳이 필요없는데도 찾을 수 없는 오류가 뜬다.
2. cafe24에서 지원하지 않는 스펙인가?
cafe24에서 제공하는 스펙은 Tomcat 8.0.x / JSP 2.3 / Servlet 3.1 / Open JDK 1.8.x / MariaDB 10.1.x UTF-8
web.xml이 필요없는 서블릿3.0은 tomcat 7.0부터 지원하기 때문에 여기엔 이상이 없다.
3. 깨닫다.
가만 보니 프로젝트의 jdk 버전과 cafe24에서 제공하는 jdk 버전이 다르다!
프로젝트의 jdk는 java11을 사용하고 있었고 cafe24에서는 1.8을 제공하고 있었고
혹시 이건가 싶어 1.8을 추가로 설치하여 프로젝트의 환경을 .1.8로 변경하니 그제서야 된다!
아래의 방법을 참고하였다. 어떤 환경이든 그 환경에 맞게 설정부터 해주어야함을 깨닫는 순간이다.
window10에서 여러 버전의 java를 쉽게 전환하는 방법
Windows에서 여러 JDK (JAVA)간에 전환하는 방법
명령 줄에서 Windows에서 여러 JDK (JAVA) 간 전환 Java 프로그래머로서 우리는 특히 6 개월 릴리스 주기로의 전환 이후 다른 Java 버전에서 Jenkins와 같은 다양한 프로젝트 및 도구를 작업 할 수 있습니
ichi.pro
프로젝트의 자바 버전 바꾸기
[이클립스] 프로젝트 자바버전 바꾸기! #자바버전변경 #이클립스자바변경 #java버전 #자바다운로
안녕하세요. 용테크의 용사장 입니다. 개발을 하다보면 없어야 좋겠지만, 어쩔 수 없이 자바 버전을 변경해야 하는 경우들이 생깁니다! 간혹 모르시는 분들이 있는거 같아서 이번에는 이클립스
yongtech.tistory.com