查詢Java 程式的class 檔編譯的JVM 版本 - Tony Blog

文章推薦指數: 80 %
投票人數:10人

Java 專案編譯的class 檔使用的版本,必須等於或小於執行環境的JVM 版本, ... more recent version of the Java Runtime (class file version 60.0), ... 查詢Java程式的class檔編譯的JVM版本 Java Kotlin 7月01,2021 OpenJDK 最近開始將執行環境的JVM8升到11,舊專案在編譯的時候如果沒有指定目標版本,就可能在執行時出現UnsupportedClassVersionError的錯誤。

Runtime版本錯誤 Java專案編譯的class檔使用的版本,必須等於或小於執行環境的JVM版本,否則會出現錯誤: Error:LinkageErroroccurredwhileloadingmainclassApp java.lang.UnsupportedClassVersionError:ApphasbeencompiledbyamorerecentversionoftheJavaRuntime(classfileversion60.0),thisversionoftheJavaRuntimeonlyrecognizesclassfileversionsupto55.0 發生的原因是App編譯成60.0版(Java16),但執行環境的JVM為55.0版(Java11) 如何檢查編譯的class版本 $javap-verboseMyApp.class|grep"major" majorversion:55 資料來源:https://fabianlee.org/2018/01/19/java-determining-the-java-version-used-to-compile-a-class-class-file-has-the-wrong-version/ Class版本對照表 JDKVersionBytecodeVersion Java1.045.0Java1.145.3Java1.246.0Java1.347.0Java1.448.0Java549.0Java650.0Java751.0Java852.0Java953.0Java1054.0Java1155.0Java1256.0Java1357.0Java1458.0Java1559.0Java1660.0Java1761.0Java1862.0 資料來源:https://javaalmanac.io/bytecode/versions/ Gradle的設定 在build.gradle檔案中可以指定編譯的目標版本,如下: sourceCompatibility=1.8 targetCompatibility=11 compileKotlin{ kotlinOptions.jvmTarget="11" } compileTestKotlin{ kotlinOptions.jvmTarget="11" } 本文網址:http://blog.tonycube.com/2021/07/java-class-version.html 由TonyBlog撰寫,請勿全文複製,轉載時請註明出處及連結,謝謝😀 我要留言 留言小提醒:1.回覆時間通常在晚上,如果太忙可能要等幾天。

2.請先瀏覽一下其他人的留言,也許有人問過同樣的問題。

3.程式碼請先將它編碼後再貼上。

(線上編碼:http://bit.ly/1DL6yog)4.文字請加上標點符號及斷行,難以閱讀者恕難回覆。

5.感謝您的留言,您的問題也可能幫助到其他有相同問題的人。

較新的文章 較舊的文章 首頁 電子書📚 GooglePlayPubu Kobo GooglePlayPubu Kobo GooglePlayPubu Kobo GooglePlayPubuGitbookKobo 熱門文章🔥 Java8新功能筆記(3)-Stream Java8新功能筆記(4)-Optional C#使用BackgroundWorker背景執行 VisualStudioCode極速上手指南 Java要收費?!是時候使用OpenJDK了 查詢Java程式的class檔編譯的JVM版本 使用Composer管理PHP套件 MacbookPro過保自己換電池 系列文章📦 Kotlin實戰範例 動手學VPS架站:使用CentOS7+Nginx+PHP-FPM+MariaDB Vue.js漸進式JavaScript框架入門 Laravel4學習筆記 文章分類🏷 Android Laravel PHP Vuejs Kotlin Java CentOS Linux WindowsPhone C# Flash HTML Objective-C Cocos2D Nginx Xcode ActionScript iOS web Reading SublimeText3 ssl Chart Eclipse Swift bash Apache JSON git shell Ajax Blogger CSS CocoaPods Database Gradle Macbook PC Redmine VSCode VisualStudioCode VisualStudio Vuido jQuery python ssh ubuntu 電子書



請為這篇文章評分?