gpt4 book ai didi

android - Azure DevOps Gradle "Java heap space"错误

转载 作者:行者123 更新时间:2023-12-02 05:58:37 24 4
gpt4 key购买 nike

我正在为 ReactNative Android 应用程序使用 Azure DevOps Pipeline for CI/CD。

它已经工作了一段时间了,但在我的最新版本中,Gradle 构建遇到了以下错误:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:signProductionReleaseBundle'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.FinalizeBundleTask$BundleToolRunnable
> Java heap space

我的 azure-pipelines.yml 文件的相关部分如下所示:

pool:
vmImage: "macos-latest" # I am using this image because I am also doing iOS builds (not sure if it's relevant to the problem)

jobs:
- job: DeployAndroid
steps:
- task: Gradle@2
inputs:
gradleWrapperFile: "MyApp/android/gradlew"
cwd: "MyApp/android"
tasks: "bundleProductionRelease"
publishJUnitResults: false
javaHomeOption: "JDKVersion"
sonarQubeRunAnalysis: false

Java 堆空间 不是一个非常具有描述性的错误,但假设它是一个内存问题似乎是合理的。我尝试通过添加 gradleOptions argument 来增加最大 JVM 内存。 :

- task: Gradle@2
inputs:
gradleOptions: "-Xmx3072m"

默认值为-Xmx1024m,因此我认为将内存增加三倍(-Xmx3072m)可能会起作用。不幸的是我仍然遇到同样的错误。

有人对如何修复此错误有任何其他想法吗?

最佳答案

我发现需要解决几个问题才能使其正常工作。

出于某种原因,azure-pipelines.yml 中的 gradleOptions 参数没有增加内存,尽管文档显示它专门用于 -Xmx 标志。 (我想我的设置中的某些内容只是覆盖了它)

相反,我将以下行添加到我的 gradle.properties 文件中:

org.gradle.jvmargs=-Xmx10240m -XX:MaxPermSize=4096m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

我发现 MacOS Azure 镜像具有以下 specs :

Mac pros with a 3 core CPU, 14 GB of RAM, and 14 GB of SSD disk space

因此,我将 Xmx 标志(最大 JVM 堆内存大小)设置为相对较高的 10GB (10240m)。

我其实不知道XX:MaxPermSize是做什么的,不过也和内存有关。其他标志仅与调试相关。

<小时/>

这最终只是我问题的一半,但另一半与我原来的问题并不特别相关。

我最初将所有责任归咎于 Azure,但我意识到我只在本地运行了调试包,而生产包也在我的本地计算机上失败并出现相同的错误。

我的另一个问题是针对 React Native 的。但它导致了同样的错误,所以我想两者在某种程度上是相关的。

问题是我已经升级到了 React Native 的最新版本,但错过了对 android/app/build.gradle 所做的一些更改。

我怀疑我碰巧丢失的具体内容对任何人都会非常有帮助,但如果您遇到此错误,我建议您检查 React Native Upgrade Helper查看 build.gradle 文件中是否缺少任何内容。

关于android - Azure DevOps Gradle "Java heap space"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69059564/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com