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
Introduction to Gradle
Search
Adrien Couque
January 07, 2014
Technology
0
34
Introduction to Gradle
Adrien Couque
January 07, 2014
Tweet
Share
More Decks by Adrien Couque
See All by Adrien Couque
A roadmap to psychohistory
acq
0
56
ML Session n°8
acq
0
54
ML Session n°7
acq
0
20
ML Session n°6
acq
0
26
ML Session n°5
acq
0
48
ML Session n°4
acq
0
27
ML Session n°3
acq
0
77
ML Session n°2
acq
1
69
ML Session n°1
acq
0
68
Other Decks in Technology
See All in Technology
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
5
4.4k
5min GuardDuty Extended Threat Detection EKS
takakuni
0
180
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
930
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
200
rubygem開発で鍛える設計力
joker1007
2
260
タイミーのデータモデリング事例と今後のチャレンジ
ttccddtoki
1
250
Connect 100+を支える技術
kanyamaguc
0
110
BrainPadプログラミングコンテスト記念LT会2025_社内イベント&問題解説
brainpadpr
1
170
生成AI開発案件におけるClineの業務活用事例とTips
shinya337
0
160
20250625 Snowflake Summit 2025活用事例 レポート / Nowcast Snowflake Summit 2025 Case Study Report
kkuv
1
360
250627 関西Ruby会議08 前夜祭 RejectKaigi「DJ on Ruby Ver.0.1」
msykd
PRO
2
360
Node-RED × MCP 勉強会 vol.1
1ftseabass
PRO
0
170
Featured
See All Featured
Facilitating Awesome Meetings
lara
54
6.4k
Scaling GitHub
holman
459
140k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
940
A better future with KSS
kneath
239
17k
4 Signs Your Business is Dying
shpigford
184
22k
Docker and Python
trallard
44
3.4k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Navigating Team Friction
lara
187
15k
Into the Great Unknown - MozCon
thekraken
39
1.9k
The Language of Interfaces
destraynor
158
25k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Transcript
Confidentiel © 2014 Applidium | Focus On : Gradle Focus
On
None
Gradle User Guide
Gradle Build automa+on • Compila+on • Packaging
• Tests • Déploiements make
Build tools
Build tools
Démo 1 : Java
Structure du projet Ancien Nouveau
Structure du projet : fichiers spécifiques Ancien Nouveau
Structure du projet Ancien Nouveau
Structure du projet : dépendances Ancien Nouveau
Structure du projet : sources Ancien Nouveau
Structure du projet : ressources Ancien Nouveau
Structure du projet : manifeste Ancien Nouveau
Structure du projet : build Ancien Nouveau
Structure du projet : résultat Ancien Nouveau
Structure du projet : résultat Ancien Nouveau
Démo 2 : Android
Fichiers Gradle • build.gradle : configura+on du build •
settings.gradle : emplacement des fichiers build.gradle (si plusieurs modules) • gradlew : wrapper Gradle • gradlew.bat : wrapper (Windows) • gradle/ : dépendances de gradlew(.bat)
Tasks • clean : neHoie le dossier build/ •
assemble : compile le projet • check : lance les tests et vérifica+ons (ex : lint) • build : assemble + check
Build Types Par défaut : • Debug :
– debuggable – signé automa+quement (path : ~/.android/debug.keystore) • Release : – non debuggable – doit être signé (via keystore spécifique) Possibilité de customiser (permissions, ressources, ...) et d’ajouter d’autres build types
Dépendances • Librairie locale compile file(‘libs/foo.jar’) • Librairie distante
(par défaut : Maven Central) compile ‘com.google.foo:foo:11.0.2’ Nouveauté Gradle : fichiers aar : • jar : code Java, pas de ressources • aar : archive Android (uniquement pour Gradle)
Démo 3 : Sanofi
Product flavors • Permet de générer plusieurs applica+ons à
par+r du même code • Peuvent être configurées indépendamment (ex : package, min SDK, ...) • Build Type + Product Flavor = Build Variant • Généralement : sourceSets différents
Product flavors : source sets conflicts Ecrase *.java Layouts Drawables
Assets Menus Raw ... Fusionne AndroidManifest.xml colors.xml strings.xml styles.xml attrs.xml
Multi-flavor variants • Possibilité de définir plusieurs variantes en
même temps android { flavorGroups "abi", "version" productFlavors { freeapp { flavorGroup "version" ... } x86 { flavorGroup "abi" ... } } } • x86-freeapp-debug • x86-freeapp-release • arm-freeapp-debug • arm-freeapp-release • mips-freeapp-debug • mips-freeapp-release • x86-paidapp-debug • x86-paidapp-release • arm-paidapp-debug • arm-paidapp-release • mips-paidapp-debug • mips-paidapp-release
Démo 4 : VinciPark
Démo 5 : RMN Grand Palais
None
None