先日、CodeBuildで java.lang.OutOfMemoryError: Java heap space が発生したので、そのときの対処法を記載します。
事象
言語やビルド環境は、以下の通り。
- Java(Spring Boot)
- CodeBuild → buildspec.yaml を利用
- ビルドシステム → gradle
開発(ローカル)環境では、ビルドが成功するのに、
CodeBuildでビルドすると、 java.lang.OutOfMemoryError: Java heap space が発生しました。
対処法
対処法は、次の2つがあります。※どちらか一方だけ実施しても解決する可能性があります。
①ビルドするコンピューティングのスペックを上げる
こちらは、スペックを上げるだけなので、対処療法的な対処になります。
極力、ソースをいじりたくなければ、こちらで対処しましょう。
操作は次の通りです。
1. AWSコンソール画面 > CodeBuild > ビルドプロジェクト > (対象のプロジェクト)
で、編集 > 環境 をクリック。
2. 追加設定 > コンピューティング で、スペックを1段上げます。
以上で完了です。
②gradle.propertiesを配置し、ヒープサイズを設定
こちらは、根本的な対処になります。
1. build.gradleがあるファイルと同じディレクトリに、gradle.properties を配置します。
2. gradle.propertiesにメモリの設定情報を記載します。
org.gradle.jvmargs=-Xmx1024m -Xms512m
設定値の意味
-Xmx1024m ・・・ヒープサイズの最大値を1024MBに設定
-Xmx512m・・・ヒープサイズの初期値を512MBに設定
以上で完了です。
コメント