Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Gradleの実行環境設定を見直す
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Yoshihiro WADA
January 19, 2024
Programming
0
1.3k
Gradleの実行環境設定を見直す
2024/1/19に開催されたshibuya.apk #46で発表した「Gradleの実行環境設定を見直す」のスライドです
Yoshihiro WADA
January 19, 2024
Tweet
Share
More Decks by Yoshihiro WADA
See All by Yoshihiro WADA
AndroidデバイスにFTPサーバを建立する
e10dokup
0
970
Firebase App Distributionのテストアプリ配信を試しやすくする
e10dokup
1
700
アプリに署名する 〜GitHub ActionsでのCIも見据えて〜
e10dokup
0
1.3k
Profileable buildでより正確なパフォーマンスを掴む
e10dokup
0
770
[DroidKaigi 2021] メディアアクセス古今東西 / Now and Future of Media Access
e10dokup
0
3.9k
今更「dp」を考える / Let's think about "dp" now
e10dokup
0
5.9k
1から学ぶAndroidアプリデバッグ - アプリの動作を追いかけよう / Learn Android application debugging from the scratch - track apps' behaviors
e10dokup
10
3.6k
Guide to background processingを読んでみる / Reading "Guide to background processing"
e10dokup
0
290
よしなに頑張る画像ロードの話 / image load mettya tsurai
e10dokup
2
540
Other Decks in Programming
See All in Programming
文字コードの話
qnighy
43
17k
あなたはユーザーではない #PdENight
kajitack
4
300
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
4
390
Go 1.26でのsliceのメモリアロケーション最適化 / Go 1.26 リリースパーティ #go126party
mazrean
1
350
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
480
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
210
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜
kuro_kurorrr
3
1.6k
New in Go 1.26 Implementing go fix in product development
sunecosuri
0
330
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
390
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
120
2026/02/04 AIキャラクター人格の実装論 口 調の模倣から、コンテキスト制御による 『思想』と『行動』の創発へ
sr2mg4
0
680
Agent Skills Workshop - AIへの頼み方を仕組み化する
gotalab555
14
7.9k
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
450
My Coaching Mixtape
mlcsv
0
63
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
210
Side Projects
sachag
455
43k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
74
Statistics for Hackers
jakevdp
799
230k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Faster Mobile Websites
deanohume
310
31k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
110
ラッコキーワード サービス紹介資料
rakko
1
2.5M
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
490
Transcript
Gradle Yoshihiro Wada / @e10dokup 2024/01/19 @ Shibuya.apk #46
{ “id”: “@e10dokup”, “name”: “Yoshihiro Wada”, “affiliations”: [ “CyberAgent Inc,
/ Ameba” ], “interested”: [ “camera”, “gadget”, “driving”, “motorsports” ] }
Android Gradle Gradle JVM 3
Android Gradle
Android Studio Gradle release debug Staging/Production APK/AAB Android Gradle Android
Gradle Plugin AGP Android Gradle 5
Gradle JVM Groovy Gradle JVM Gradle Gradle Gradle JVM Gradle
6
None
Android --build-cache gradle.properties GRADLE_OPTS CI GRADLE_OPTS: ʢઃఆʙʙʣ Gradle 8
Gradle 9 Ҿ༻ݩɿhttps://docs.gradle.org/current/userguide/build_environment.html
CI GRADLE_OPTS CI gradle.properties GRADLE_OPTS JVM GRADLE_OPTS JVM_OPTS 10
None
Android Studio Android SDK AGP AGP 8 R AGP Android
Studio 12
AndroidX •android.enableJetifier=false Build Analyzer Jeti fi er 13
R R •android.nonTransitiveRClass=true AGP 8.0.0 10~20% Android Studio [Refactor] >
[Migrate to Non-Transitive R Classes … ] R 14
Con fi guration •org.gradle.configuration-cache=true •org.gradle.configuration-cache.problems=warn Con fi guration Build Analyzer
Con fi guration Cache Con fi guration Cache 15
Gradle JVM •org.gradle.jvmargs=-XX:+UseParallelGC •org.gradle.jvmargs=-Xmx4096M Gradle JVM org.gradle.jvmargs 16
Gradle JVM
CI Common Android memory issues CI 1 OS 75% RAM
20GB 15GB PC Android Studio PC Android Studio RAM 16GB JVM 18
org.gradle.jvmargs 19 org.gradle.jvmargs=-Xmx6g -XX:MaxMetaspaceSize=1g -Dkotlin.daemon.jvm.options=-Xmx2g
-Xmx JVM Android Developers 4/6/8GB Gradle JVM -Xms org.gradle.jvmargs 20
org.gradle.jvmargs=-Xmx6g -XX:MaxMetaspaceSize=1g -Dkotlin.daemon.jvm.options=-Xmx2g
-XX:MaxMetaspaceSize Metaspace Gradle Gradle Plugin OOM 256m 384m Android org.gradle.jvmargs
21 org.gradle.jvmargs=-Xmx6g -XX:MaxMetaspaceSize=1g -Dkotlin.daemon.jvm.options=-Xmx2g
-Dkotlin.daemon.jvm.options Kotlin Daemon Kotlin Daemon Gradle org.gradle.jvmargs Gradle OOM org.gradle.jvmargs
22 org.gradle.jvmargs=-Xmx6g -XX:MaxMetaspaceSize=1g -Dkotlin.daemon.jvm.options=-Xmx2g
Kotlin 23 Kotlin Gradle Daemon kotlin.compiler.execution.strategy daemon default Kotlin Daemon
in-process Gradle Daemon Gradle out-of-process Gradle
PC CI Gradle 2-3 GRADLE_OPTS gradle.properties Gradle Daemon RAM 20GB
4GB 24
https://developer.android.com/build/optimize-your-build Optimize your build speed Android Developers https://support.circleci.com/hc/en-us/articles/360021812453- Common-Android-memory-issues Common
Android Memory Issues Circle CI https://qiita.com/irgaly/items/4c22d233caf8ec55512e Android: GitHub Actions Gradle build daemon disappeared unexpectedly Qiita References 25