エラー:バイトコードをdexに変換中にエラーが発生しました:原因:サードパーティのパッケージをインポートするときに、コンパイル時にDexがバージョン52のバイトコードを解析できません。



Error Error Converting Bytecode Dex



サードパーティのライブラリ(つまり、GithubでQRコードを生成する機能を認識するライブラリ)をインポートするとき、私は今日本当に頭痛の種です。

https://github.com/bertsir/zBarLibary



インポート

「cn.bertsir.zbarLibary:zbarlibary:1.4.1」をコンパイルします



間違える:

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.

アプリのgradleにこれらの2つの文を追加したいことはわかっています。 Google Baiduは順番に検索し、問題の解決策が比較的重いことを発見しました。ピース。

私のアプローチは追加することです:



dexOptions { preDexLibraries false jumboMode true javaMaxHeapSize '2g' incremental false } compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 }

追加後、build.gradleの構成は次のようになります。
画像

私が依存しているサードパーティはjava8でコンパイルされていますが、私のツールはjava1.7しかないため、この問題が発生します