'java.lang.UnsupportedClassVersionError'에 해당되는 글 2

  1. 2009.10.19 자바 클래스 파일 버전 확인
  2. 2009.08.04 java.lang.UnsupportedClassVersionError

자바 클래스 파일 버전 확인

  1. javap로 클래스 파일 버전 확인
  2. 클래스파일을 바이트단위로 읽어서 버전 확인하기 : Check the class version
  3. java.class.version으로 확인하기
  4. 울트라에디터에서 확인하기


  5. 에디트플러스에서 확인하기


java.lang.UnsupportedClassVersionError

java.lang.UnsupportedClassVersionError: spring/TestGreeting (Unsupported major.minor version 49.0) java.lang.UnsupportedClassVersionError: Bad version number in .class file

위 상황은 6.0에서 컴파일한 클래스를 5.0에서 돌렸을 때 발생
아마 5.0에서 컴파일한 클래스를 그 하위 버전에서 실행시켰을때 일거 같다.

 

Exception in thread "main" java.lang.UnsupportedClassVersionError: Xxx has been compiled by a more recent version of the Java Runtime (class file version 59.0), this version of the Java Runtime only recognizes class file versions up to 52.0

STS - Java Build Path - JRE 1.8, Project Facets - Java 1.4 였음. 1.8로 설정해서 처리

 

클래스 버전(java.class.version)

  • version 50.0 : 6.0
  • version 49.0 : 5.0
  • version 48.0 : 1.4
  • 46 이 1.2 라고는 하지만, 이 문서에서는 1.4.1
    Eclipse에서 Generated .class files compatibility를 1.2로 했을 때 46으로 나타남.