簡體   English   中英

android studio中庫的Java 1.7兼容性

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM