티스토리 뷰

반응형

1. 현상

  : 배포를 하면 프로젝트가 실행은 되는데 실행 전에 많은 로그들을 남겼다. 

    로그의 에러는 모두 같았다.           

org.apache.catalina.startup.ContextConfig.processAnnotationsJar Unable to process Jar entry 
[module-info.class] from Jar 
[file: ~.jar] for annotations
 org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19

 

2. 해결

   : 서칭을 해보면 대부분 java 버전과 Tomcat 버전이 서로 맞지 않아서 나타나는 에러로그라고 나온다. 

     19이면 java 9를 사용해야 하는데 java 버전이 그보다 낮아서 생기는 것이라고....

     운용환경은 java 1.8 이고, Tomcat 버전은 8.5 를 사용하고 있는데 검색해보면 별 문제 없는 조합이다.

     java 9를 설치해야 하나.... 고민하던 찰나, 3. 참고 사이트에서 답을 찾았다. (사실 다른 누군가가 찾아준.... ㅠㅠ)

 

    이것은 Tomcat 버그이 이 문제가 해결된 버전의 Tomcat을 사용하면 된다.

  • Tomcat 9.0.x : 9.0.0.M18 이후
  • Tomcat 8.5.x : 8.5.12 이상 
  • Tomcat 8.0.x : 8.0.42 이상
  • Tomcat 7.0.x : 7.0.76 이상

   내 경우는 Tocmat 8.5.9 였다.

 

3. 참고 사이트 : https://stackoverflow.com/questions/23541532/org-apache-tomcat-util-bcel-classfile-classformatexception-invalid-byte-tag-in

 

4. 아래 표 출처 : http://blog.naver.com/PostView.nhn?blogId=bestheroz&logNo=221321296597

    java와 Tomcat 버전 말고도 servlet과 jsp 버전도 서로 맞아야 한다.

Servlet Spec

JSP Spec

Apache Tomcat Version

Supported Java Versions

4.0

2.3

9.0.x

1.8 이상 

3.1

2.3

8.5.x

1.7 이상

3.1

2.3

8.0.x (superseded)

1.7 이상

3.0

2.2

7.0.x

1.6 이상
(웹소켓은 1.7 이상)

2.5

2.1

6.0.x (archived)

1.5 이상

2.4

2.0

5.5.x (archived)

1.4 이상

 

 

 

 

 

 

 

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
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 29 30
글 보관함