繁体   English   中英

Unity Android 构建错误 - 此构建中使用了已弃用的 Gradle 功能,使其与 Gradle 6.0 不兼容

[英]Error on Unity Android Build - Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0

之前有人问过这个问题,但我正在寻找 Unity 平台的解决方案。 我尝试导出项目,如果它在 Android Studio 上打开,但 Gradle 同步也在那里失败。

我一直在我的项目中使用 GoogeAds 和 Firebase。 该项目为 IOS 构建良好,但对于 Android,它给我错误“此构建中使用了弃用的 Gradle 功能,使其与 Gradle 6.0 不兼容”。

我试图删除插件文件夹中的所有内容(Template.gradle 除外)但仍然出现相同的错误。

所以我既不能在 Android studio 上调试它,也不能在 Unity 上构建它。 任何帮助或指导都会非常有益。

我正在使用统一 2018.4.5f1

谢谢

这里的问题是 Unity 的特定版本与 gradle 的特定版本相关联,并且由于 gradle 的更高版本不一定向后兼容,如果您没有安装与系统相同的版本,您可能无法构建-默认版本。

我通过参考 Unity 使用的 Java 和 gradle 的内部版本解决了这个问题。 例如,我在 Mac 上使用 Unity 2018.4.18 进行最近的项目。 这需要 gradle 5.1.1,而我的系统 gradle 是 6.6。 我在构建时注意到它还使用了许多命令行选项。

所以我只是将它们复制到一个新命令中: alias gradle511='/Applications/Unity2018.4.18/PlaybackEngines/AndroidPlayer/Tools/OpenJDK/MacOS/bin/java -classpath "/Applications/Unity2018.4.18/PlaybackEngines/AndroidPlayer/Tools/gradle/lib/gradle-launcher-5.1.1.jar" org.gradle.launcher.GradleMain "-Dorg.gradle.jvmargs=-Xmx4096m"'

在 Windows 你可以做类似的事情。 比如我在这个位置找到了一份gradle: C:\Program Files\Unity\Hub\Editor\2019.3.15f1\Editor\Data\PlaybackEngines\AndroidPlayer\Tools\gradle\lib

然后,我可以通过找到 Unity 导出并运行的 gradle 项目成功按项目构建: gradle511 assembleRelease

尝试更改依赖项 { classpath 'com.android.tools.build.gradle:3.4.0'

to: dependencies { classpath 'com.android.tools.build.gradle:3.4.3'

...以某种方式为我工作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM