查看方式
第一種方式:使用MANIFEST.MF文件裏的Class-Path
MANIFEST.MF文件路徑
:Jar文件 --> META-INF目錄 --> MANIFEST.MF
Class-Path含義
:執行這個Jar包所依賴的第三方Jar包的ClassPath ,class loader會依據這個路徑來搜索class。
第二種方式:使用mvn dependency:tree命令查看Maven項目中的jar包依賴關係
備註
兩種方式都能查看被依賴的Jar包及其版本號,但是實際中可能存在兩種方式獲取到的被依賴Jar包版本不一致的情況。原因是因爲:
第一種方式獲取的Jar包版本
是編譯這個Jar包時所用到的真正版本
。
第二種方式獲取的Jar包版本
是根據Jar包裏的pom文件定義依賴包時定義的版本。
如果在pom文件裏直接定義死依賴的Jar版本,則兩種方式獲取到依賴包版本是一致的;
如果pom文件定義的Jar版本是使用參數動態生成的,則在倉庫(先本地倉庫,如果沒有則從遠程倉庫)中獲取參數值時,該值可能不是當初編譯Jar時獲取到的值。如:遠程倉庫對某個依賴包的版本進行了更新。