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
61
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
49
ML Session n°4
acq
0
27
ML Session n°3
acq
0
78
ML Session n°2
acq
1
69
ML Session n°1
acq
0
68
Other Decks in Technology
See All in Technology
ABEMAの本番環境負荷試験への挑戦
mk2taiga
4
300
VGGT: Visual Geometry Grounded Transformer
peisuke
0
160
サイバーエージェントグループのSRE10年の歩みとAI時代の生存戦略
shotatsuge
4
420
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
4
290
VS CodeとGitHub Copilotで爆速開発!アップデートの波に乗るおさらい会 / Rapid Development with VS Code and GitHub Copilot: Catch the Latest Wave
yamachu
2
190
LLM時代の検索
shibuiwilliam
2
430
タイミーのデータモデリング事例と今後のチャレンジ
ttccddtoki
6
2.5k
[SRE NEXT] ARR150億円_エンジニア140名_27チーム_17プロダクトから始めるSLO.pdf
satos
2
620
事例で学ぶ!B2B SaaSにおけるSREの実践例/SRE for B2B SaaS: A Real-World Case Study
bitkey
1
160
オフィスビルを監視しよう:フィジカル×デジタルにまたがるSLI/SLO設計と運用の難しさ / Monitoring Office Buildings: The Challenge of Physical-Digital SLI/SLO Design & Operation
bitkey
1
120
成長し続けるアプリのためのテストと設計の関係、そして意思決定の記録。
sansantech
PRO
0
130
スタートアップに選択肢を 〜生成AIを活用したセカンダリー事業への挑戦〜
nstock
0
260
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
830
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
KATA
mclloyd
30
14k
Become a Pro
speakerdeck
PRO
29
5.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
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