.class 파일을 컴파일하는 데 사용되는 jdk 버전을 확인하는 방법
중복 가능성:
Java .class 버전을 읽고 표시하는 도구
디버깅을 시도하고 있습니다.
".class 파일의 잘못된 버전 번호"
java의 에러, 어떤 버전을 체크할 수 있는 방법이 있나요?.class
파일이란?
사용하고 있다JRE1.5.0_6
, 그러나 나의JDK
버전 1.6.0_13 입니다.
호환성 모드를 1.5로 설정하여 컴파일하고 있습니다.이것이라면 동작할 수 있을 것 같은데...
명령줄에서 다음을 찾습니다(MyClass라는 클래스의 경우).
Unix/Linux의 경우:
javap -verbose MyClass | grep "major"
Windows 의 경우:
javap -verbose MyClass | findstr "major"
결과에서 메이저버전이 필요하죠?다음은 값의 예를 제시하겠습니다.
- Java 1.2는 메이저버전 46을 사용합니다.
- Java 1.3은 메이저버전 47을 사용합니다.
- Java 1.4는 메이저버전 48을 사용합니다.
- Java 5는 메이저버전 49를 사용합니다.
- Java 6은 메이저버전 50을 사용합니다.
- Java 7은 메이저버전 51을 사용합니다.
- Java 8은 메이저버전 52를 사용합니다.
- Java 9는 메이저버전 53을 사용합니다.
- Java 10은 메이저버전 54를 사용합니다.
- Java 11은 메이저버전 55를 사용합니다.
그나저나 당신이 문제가 있는 이유는 자바 컴파일러가 두 가지 버전의 플래그를 인식하기 때문입니다.Java 1.5 수준의 소스 코드를 가정한 -source 1.5와 Java 1.5 호환 클래스 파일을 내보내는 -target 1.5가 있습니다.아마도 이 두 스위치를 모두 사용하고 싶을 것입니다만, 반드시 -target 1.5가 필요합니다.일식이 올바르게 동작하고 있는지 다시 한 번 확인해 보십시오.
무료 JarCheck 툴은 이쪽
jclasslib를 사용할 수 있습니다.
https://github.com/ingokegel/jclasslib
자신을 *.class 확장자와 연관지을 수 있어 좋습니다.
그럼?-verbose
에 깃발을 올리다java
명령어는 유용한 정보를 제공합니까?그렇지 않다면, 아마도java -X
도움이 될 수 있는 특정 버전의 정보를 공개하고 있습니까?
언급URL : https://stackoverflow.com/questions/1096148/how-to-check-the-jdk-version-used-to-compile-a-class-file
'source' 카테고리의 다른 글
지정된 html 문자열에서 선행 및 후행 공백을 제거하려면 어떻게 해야 합니까? (0) | 2022.09.16 |
---|---|
계산된 속성 업데이트 후 함수를 실행하는 가장 좋은 방법 (0) | 2022.09.16 |
단말기에서 MAMP의 MySQL에 액세스 (0) | 2022.09.16 |
mysql은 같은 now()로 여러 열을 업데이트합니다. (0) | 2022.09.16 |
Ruby on Rails Database.yml 파일의 MySQL 구성을 수정합니다. (0) | 2022.09.16 |