檢視JAR包的JDK版本

weixin_33816300發表於2018-09-12

方法1: 使用UltraEdit檢視java class檔案

java開發過程中經常會有這樣的疑問:對於某個依賴jar,它支援的jdk版本是多少?這種問題通過搜尋引擎通常很難找到準確答案,下面給出一種方便準確的方法來檢視某個依賴jar對應的jdk版本號:

step 1.  解壓縮依賴jar

依賴jar被解壓縮得到許多class檔案;

step 2.  下載安裝UltraEdit軟體

step 3.  使用UltraEdit開啟解壓縮的任意一個class檔案

示例如下:

13578911-7d3a69039c3ad58b.png

只看第一行資料,前面8個位元組CA FE BA BE 是固定的,之後4個位元組00 00 是次版本號,次版本號後面的4個位元組00 32  是jdk的版本號,如我這裡使用的是jdk1.6

jdk版本號對應關係如下:

13578911-eae05d912b91f378.png
 圖1-1.   jdk版本號對應關係



方法2: javap反編譯命令檢視jdk版本


以依賴jar oraclle driver (ojdbc6為例):

root#  javap -verbose OracleClob.class

Classfile /root/Downloads/ojdbc6/oracle/jdbc/OracleClob.class

  Last modified Jul 3, 2014; size 401 bytes

  MD5 checksum dfe69528ea779ae04c68ca59248a8ab1

  Compiled from "OracleClob.java"

public interface oracle.jdbc.OracleClob extends java.sql.Clob

  minor version: 0

  major version: 50

......

通過檢視圖1-1,50對應的jdk版本為jdk1.6。

相關文章