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 2.0
Search
FUJI Goro
September 24, 2014
Technology
1
4.2k
Introduction to Gradle 2.0
potatotips #9 at Fablic の発表資料です
FUJI Goro
September 24, 2014
Tweet
Share
More Decks by FUJI Goro
See All by FUJI Goro
How to Boost Your Code with WebAssembly
gfx
2
2.8k
AssemblyScriptでライブラリコードの高速化をしてみる
gfx
5
2.9k
実践TypeScriptトークバトル
gfx
1
1.1k
歴史的経緯の説明 as code
gfx
7
2.7k
Elasticsearchによる 全文検索の実装 in Rails
gfx
5
9.4k
すばらしきGraphQLのSEKAIへようこそ
gfx
20
9.2k
マルチテナント・ウェブアプリケーションの実践
gfx
14
9.4k
How to choose the ORM on Android
gfx
1
4.1k
How Do We Get Along With Static Types
gfx
5
3.3k
Other Decks in Technology
See All in Technology
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
360
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
490
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
130
TypeScript、上達の瞬間
sadnessojisan
46
13k
Amazon Personalizeのレコメンドシステム構築、実際何するの?〜大体10分で具体的なイメージをつかむ〜
kniino
1
100
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
390
組織成長を加速させるオンボーディングの取り組み
sudoakiy
2
180
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
SRE×AIOpsを始めよう!GuardDutyによるお手軽脅威検出
amixedcolor
0
130
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
120
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
310
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
160
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Visualization
eitanlees
145
15k
Designing Experiences People Love
moore
138
23k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Transcript
Introduction to Gradle 2.0 potatotips #9 at Fablic, 2014/9/24 Fuji
Goro (gfx)
Myself • id:gfx (Fuji, Goro) • ΫοΫύουͷΤϯδχΞ • iOS /
Android྆ํΓ·͢ • ϚΠϒʔϜSwiftΛۃΊΔ͜ͱ • ࠷ۙϚγϯ͕ނোͯ͠σʔλϦΧόϦͰ͖ͳ͘ ͯڥ࡞Γͳ͓ͯ͠ਏ͔ͬͨɻϚγϯյΕΔ
Android Studio 0.8.11 2014/9/18 ϦϦʔε
Shipped with Android Gradle Plugin 0.13.0
! Depends on Gradle 2.1 and Groovy 2.3.6
Gradle 2.1
Gradle 2.1 • ৽͍͠pluginػߏ • https://plugins.gradle.org/ • نఆͷϝλใΛ͚ͭͯjcenterʹdeploy͢Δͱࢀর Ͱ͖ΔΑ͏ʹͳΔ •
pluginsϒϩοΫ • qualified idʹΑͬͯ҉ͷ͏ͪʹclasspathʹՃ͑Δ Έ
plugins { id 'com.github.forsety.adr' version '0.1' } apply plugin: 'com.android.application'
fully-qualified id no comma! no colon! before "apply"s Android pluginࣗମpluginsϒϩοΫͰࢦ ఆͰ͖ΔΑ͏ʹͦͷ͏ͪͳΔͱࢥΘΕΔ͕ ݱঢ়·ͩͰ͖ͳ͍ͷͰҎલͱ͓ͳ͡
Other features • Incremental Java compile (Android·ͩ…ʁʣ • Groovy 2.3.6
(Gradle 1.x Groovy 1.8.6) • Java8 support
Groovy 2.3.6
@CompileStatic ੩తܕ͖ͰίϯύΠϧ JavaฒʹരʹͳΔ
import groovy.transform.CompileStatic ! @CompileStatic int f(int a, int b) {
return a + b } ! def a = f(10, 20) // ܕਪޮ͘ println(a) import͕ඞਢ ASͩͱ͘ͳΔ
@CompileStaticͰมΘΔ͜ͱ • Gradle Pluginͷ࣮ߦ͕ߴʹͳΔ • ͨͩ͠ݴޠʮGroovyͷํݴʯʹͳΔ • ༻ײ͕͚ͬ͜͏ҧ͏ • Android
Gradle Pluginͷresource merge͘ ͳΔ…͔
·ͱΊ • Android Gradle Plugin 0.13ͰGradle 2.1Λ࠾ ༻ͨ͠ • Gradle
2.1pluginػߏ͕Ұ৽͞ΕͯΔͷͰ AndroidΤίγεςϜͰظײͷߴ·Γ͕͋Δ • Gradle 2.1Groovy 2.3.6Λ࠾༻͍ͯ͠ΔͷͰ ໘ͰվળͷݟࠐΈ͕͋Δ