首页 > 解决方案 > Unity:下载 Google Ads Api 后“无法将类转换为 dex 格式”

问题描述

我正在开发一个大约 30 分钟前运行良好的小型平台游戏。我所做的只是按照此处的说明中所述导入 Google Ads Api:

https://developers.google.com/admob/unity/start

我一步一步跟着他们。

现在,我的游戏在编辑器中仍然可以正常运行 - 但我现在想将 APK 部署到我的手机上。这崩溃了

"CommandInvokationFailure: Unable to convert classes into dex format.
D:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\OpenJDK\Windows\bin\java.exe -Xmx8000M -Dcom.android.sdkmanager.toolsdir="C:/Program Files (x86)/Android/android-sdk\tools" -Dfile.encoding=UTF8 -jar "D:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar" -

stderr[

PARSE ERROR:
unsupported class file version 52.0
...while parsing bitter/jnibridge/JNIBridge.class
1 error; aborting
]
stdout["

接下来是一个包含大量信息的长截断列表。我应要求发布此内容。

然后我用谷歌搜索了一下,人们说这是由于“重复文件”通常来自 Facebook API 和 Google API 都被导入同一个项目。

但是,您可能已经认为,Google API 是我导入的第一个 API,所以从技术上讲,不可能有“两个重复文件”,对吧?

标签: unity3d

解决方案


对于那些有同样问题的人:

下载适用于 Android 的最新 JDK(它与 Android Studio 一起提供,因此您需要安装 Android Studio,即使您不想要它)。

安装完所有东西(包括最新的 JDK)后,记住你的 JDK 所在的路径。

现在在 Unity 的设置下,将界面引导到您刚刚下载的最新 JDK 的 JDK 文件夹。这解决了它:)


推荐阅读