[英]Java 1.7 compatibility for a library in android studio
我想在我的android studio項目中使用此庫,但是當我使用gradle將其添加到項目中時,顯示以下錯誤
Error:Error converting bytecode to dex: Cause: Dex cannot parse version 52 byte code. This is caused by library dependencies that have been compiled using Java 8 or above. If you are using the 'java' gradle plugin in a library submodule add targetCompatibility = '1.7' sourceCompatibility = '1.7' to that submodule's build.gradle file.
似乎是因為Java 1.7的兼容性,但我不知道如何解決它。 Android Studio建議向該子模塊的build.gradle添加targetCompatibility ='1.7'sourceCompatibility ='1.7',但是如何將其添加到gradles依賴項部分?
您應該使用VERSION_1_8
而不是VERSION_1_7
安裝JDK 1.8
你應該添加這個
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
費耶
在使用1_8之前,請閱讀使用Java 8語言
要為您的項目啟用Java 8語言功能和Jack,請在模塊級build.gradle文件中輸入以下內容:
android {
...
defaultConfig {
...
jackOptions {
enabled true
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
清理重建並運行
版本52實際上是Java8。該庫是在不兼容Java 7的情況下編譯的,因此如果您的目標是Java 7或更低版本,則不能使用該庫。
我發現他們的GitHub上存在一個公開問題 。 僅此版本可能有問題,因此您可以嘗試使用以前的版本,直到他們解決該問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.