我正在将一个项目从 gradle 版本 3.3 转换为 4.10.1。该项目主要是使用自定义构建步骤构建的 C++ 代码 - 而不是 CMake (externalNativeBuild) 或 Android.mk(ndkBuild)。它产生以下库:
armeabi-v7a unstripped: 883.2MB
arm64-v8a unstripped: 864.6MB
armeabi-v7a stripped: 15.6MB
arm64-v8a stripped: 23.9MB
Run Code Online (Sandbox Code Playgroud)
构建过程在 crashlyticsGenerateSymbolsGoogleDistribution 步骤失败,并显示错误 OutOfMemoryError: GC Overhead Limit Exceeded。
是否有为 crashlytics 插件步骤提供更多内存的方法或参数?
顶级 gradle.properties 文件包含以下 jvm 参数:
org.gradle.jvmargs=-Xmx4g -XX:MaxPermSize=512m- 尽管我已经尝试了org.gradle.jvmargs=-Xmx12g:MaxPermSize=2g. 这些值的更改似乎不会影响 crashlyticsGenerateSymbols 步骤。
如果我运行 assembleGoogleDistribution 构建,跳过 crashlytics 步骤,构建将顺利完成。
构建堆栈跟踪:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':application:crashlyticsGenerateSymbolsGoogleDistribution'.
> GC overhead limit exceeded
* Try:
Run …Run Code Online (Sandbox Code Playgroud)