Android Studio升級版本后,提示Java Runtime (class file version 55.0), this version of the Java Runtime on...

背景:

????最近為了學(xué)習(xí)Compose,將Android Studio由4.2.1升級到Dolphin | 2021.3.1 Patch 1版本,后續(xù)build項(xiàng)目的時(shí)候出現(xiàn)錯誤提示

????Cause: com/android/tools/idea/gradle/run/OutputBuildAction has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0


解決思路1: 升級JDK版本

點(diǎn)擊File-Project Structure


切換至新AS所需的11版本


解決思路2:?

????一般來說,到這里問題就解決了,可以正常Build,但是我的項(xiàng)目因?yàn)間radle配置的問題,走到最后一步未能打包,具體錯誤是

Unable to load class 'javax.xml.bind.JAXBException'.

This is an unexpected error. Please file a bug containing the idea.log file.


經(jīng)查是gradle相關(guān)錯誤,


gradle-wapper.properties中的配置
根目錄項(xiàng)目build.gradle的配置3.6.4

發(fā)現(xiàn)項(xiàng)目中g(shù)radle配置不對應(yīng)

gradle 介紹

Gradle 不是Google開發(fā)的。Gradle是有專門的團(tuán)隊(duì)進(jìn)行開發(fā)維護(hù)。并且完全開源的自動化構(gòu)建工具。IDEA 默認(rèn)集成了該工具??梢苑奖愕膸臀覀儗㈨?xiàng)目代碼進(jìn)行構(gòu)建打包,是一個(gè)腳本工具。

Gradle官網(wǎng):gradle.org

如果你想了解更多與gradle的相關(guān)資料,可以通過官網(wǎng)進(jìn)行了解。

我們通常在build.gradle 下編輯輸入的代碼叫做groovy語言。如果想了解可以學(xué)習(xí)groovy語言的基本知識。

Android Gradle 插件

Android Studio 是采用Gradle 進(jìn)行代碼的打包編譯以及構(gòu)建項(xiàng)目的。

但是Gradle是一個(gè)開源的自動構(gòu)建工具,是面向全平臺的。所以Android 在基于Gradle進(jìn)行了二次開發(fā),整合了幾項(xiàng)專門用于構(gòu)建Android應(yīng)用的功能。

而該工具命名為:com.android.tools.build:gradle:xxxx 。

所以,到這里大家理解兩者關(guān)系了。

//這個(gè)地方是android 自己定制化Gradle的插件版本

classpath 'com.android.tools.build:gradle:3.6.4'

//gradle/wrapper/gradle-wrapper.properties 這個(gè)是系統(tǒng)獨(dú)立的Gradle的版本號。

distributionUrl=https://downloads.gradle-dn.com/distributions/gradle-5.6.4-all.zip

所以,這兩個(gè)的版本號不統(tǒng)一。

但是,AndroidGradle 是需要依賴于gradle的,所以兩個(gè)之間的對應(yīng)關(guān)系比較重要

最新信息

由于以前兩個(gè)插件的版本一直對應(yīng)不上,容易造成大家的誤解。Android Gradle的版本號 在Gradle發(fā)布7.0后,進(jìn)行了同步。也就是我們在上面看到的。7.0之后就同步上了。兩個(gè)版本號一致


所以在項(xiàng)目修改build.gradle中"classpath 'com.android.tools.build:gradle:4.0.0'"與gradle-6.1.1-all.zip對應(yīng)后,順利編譯

??

參考鏈接:

CSDN: AndroidStudio編譯報(bào)錯記錄

CSDN: Android Studio 中的Gradle版本介紹

stackoverflow:How to resolve Java Runtime (class file version 55.0)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容