LoginSignup
1

More than 3 years have passed since last update.

Android アプリのビルド時に GC overhead limit exceeded が出たときに確認すること

Posted at

概要

macOS を Mojave から Catalina へアップデート後、 Android アプリをビルドすると

GC overhead limit exceeded

というエラーが出るようになってしまいました。。。🤔

原因を突き止めたので書き残しておきます。

原因(ぼくの環境の場合)

いきなり結論を。

Android Studio の Memory Settings が初期化されていたせいでした…

  • Android Studio - Preferences スクリーンショット 2020-01-17 20.19.48.png

赤枠の項目が 空白 になっていました。

こちらを設定したら無事ビルドできるようになりました! 🎉

他に確認したこと

「GC overhead limit exceeded」 で調べるといろいろヒットすると思います🔎

build.gradle に javaMaxHeapSize を定義しているか

build.gradle
android {
    dexOptions {
         javaMaxHeapSize "2g"
    }
}

Android開発中にGC overhead limit exceededで逝く

こちらの記事に詳しく書かれています。

ぼくの build.gradle には既に定義されていました…。

gradle.properties に jvmargs を定義しているか

[stackoverflow] java.lang.OutOfMemoryError: GC overhead limit exceeded on Android 1.4

途方に暮れていたらこちらの stackoverflow にたどり着きました。

gradle.properties
org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=4096m -XX:+HeapDumpOnOutOfMemoryError

確認してみると定義されていませんでした❗️キタ❗️これでビルドできるー🙌

ウキウキで gradle.properties に追記してビルドボタンぽちっ❗️

ダメでした…。

各値を書き換えてみたりしましたがビルドできずでした。。

おわりに

こちらの記事が誰かの助けになると幸いです🙏

参考

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1