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
Kotlin Annotation Processor Tools(kapt)
Search
Naohiro Yoshida
March 07, 2017
Technology
1
7.3k
Kotlin Annotation Processor Tools(kapt)
TISとのLTでのKotlin Annotation Processor Tools(kapt)の話
kapt1、kapt2、dagger2のworkaroundとか動作とか調べたやつ
Naohiro Yoshida
March 07, 2017
Tweet
Share
More Decks by Naohiro Yoshida
See All by Naohiro Yoshida
React with Reduxによる大規模商用サービスの開発 / nodefest2016
yoshidan
50
35k
Other Decks in Technology
See All in Technology
7日間でハッキングをはじめる本をはじめてみませんか?_ITエンジニア本大賞2025
nomizone
2
1.8k
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
7.2k
表現を育てる
kiyou77
1
210
技術負債の「予兆検知」と「状況異変」のススメ / Technology Dept
i35_267
1
1.1k
明日からできる!技術的負債の返済を加速するための実践ガイド~『ホットペッパービューティー』の事例をもとに~
recruitengineers
PRO
3
390
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
230
Tech Blogを書きやすい環境づくり
lycorptech_jp
PRO
1
240
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
530
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
250
Developer Summit 2025 [14-D-1] Yuki Hattori
yuhattor
19
6.2k
2024.02.19 W&B AIエージェントLT会 / AIエージェントが業務を代行するための計画と実行 / Algomatic 宮脇
smiyawaki0820
13
3.3k
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
710
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Docker and Python
trallard
44
3.3k
Agile that works and the tools we love
rasmusluckow
328
21k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Done Done
chrislema
182
16k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Six Lessons from altMBA
skipperchong
27
3.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
440
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Transcript
,PUMJO"OOPUBUJPO1SPDFTTPS5PPMT ,BQU .BSDI ! /BPIJSP:PTIJEB 3FDSVJU5FDIOPMPHJFT$P -UE
%*$POUBJOFSJTSFRVJSFE 0UIFSGSBNFXPSLTUPSFEVDFCPJMFSQMBUFDPEFJTSFRVJSFE "OESPJEJTOPUKVTUBGSPOUFOE CVUBGVMMTUBDLBQQMJDBUJPO "OESPJE $MFBO"SDIJUFDUVSF
"WPJESFqFDUJPO ˚+%,%ZOBNJD1SPYZ ! +BWBCZUFDPEFNBOJQVMBUJPOBUSVOUJNF JTHFOFSBMMZVOBWBJMBCMF º$(-JC "TQFDU+-58 MPBEUJNFXFBWJOH "OESPJE5IFPSZ
"OOPUBUJPO1SPDFTTJOH +43 (FOFSBUFKBWBTPVSDFDPEFGSPNPSJHJOBMKBWBTPVSDF "DUJWJUZKBWB "
[email protected]
*OKFDUPS KBWB !*OKFDU (FOFSBUFE'JMF ˞MPNCPLEPFT`UHFOFSBUFTPVSDFDPEFCVUUSBOTGPSN"45
BCTUSBDUTZOUBYUSFF KBWBD
,PUMJO -JHIUXFJHIU"MU+BWB OVMMTBGF DPNQJMFFSSPS WBSNPEFM.PEFMOVMM GVOFYFDVU IPHF.PEFM \NPEFMIPHF^ DPNQJMFFSSPS
WBSNPEFM.PEFM OVMM GVOFYFDVUF IPHF4USJOH NPEFM FYFDVUF IPHF $PNQJMF&SSPS 4VQQSFTT/VMMBCMF&YFDVUJPO
,PUMJO KBWBJOUFSPQFSBUCJMJUZ (FOFSBUFDMBTTCZ"4.MJLFTDBMB DMPKVSF generate stub for javac javac kotlinc
LU DPNQJMFKBWB XJUITUVC DPNQJMFLI XJUIKBWBDMBTT TUVC
1SPCMFN "DUJWJUZLU !*OKFDU "
[email protected]
*OKFDUPSLU LU LU º(FOFSBUFE "DUJWJUZLU !*OKFDU "
[email protected]
*OKFDUPSKBWB
LU º(FOFSBUFE LPUMJOD KBWBD XJUI+43 LPUMJODEPFTO`UTVQQPSU+43 KBWBDDBO`USFBEBOOPUBUJPOPGLU
,BQU "OOPUBUJPO1SPDFTTPSGPSLPUMJO -FUKBWBDSFBELUBOOPUBUJPO "DUJWJUZLU "
[email protected]
*OKFDUPS KBWB !*OKFDU (FOFSBUFE'JMF LBQU BOEKBWBD
,BQU LU BOOPUBUJPO YYYUYU generate stub javac kotlinc "OOPUBUJPO 1SPDFTTPS
XSBQQFE SVOBTHSBEMFUBTL EBHHFS EBUBCJOEJOH PSNB ʜ TUVC BEEBOOPUBUJPOJOGPUPDMBTT DBMMVOXSBQQFEBOOPUBUJPOQSPDFTTPS
6OTUBCMF Τϥʔ NonExistentClassʹΞΫηεͰ͖·ͤΜ error.NonExistentClassͷΫϥεɾϑΝΠϧ͕ݟ͔ͭΓ·ͤΜ ৄࡉ࣍ͷελοΫɾτϨʔεͰௐ͍ࠪͯͩ͘͠͞ɻ com.sun.tools.javac.code.Symbol$CompletionFailure: error.NonExistentClassͷΫϥεɾϑΝΠϧ͕ݟ͔ͭΓ·ͤΜ Τϥʔݸ :PVIBWFUZQFTHFOFSBUFECZ"OOPUBUJPO1SPDFTTJOHJOZPVSEFDMBSBUJPOTJHOBUVSFT MJLFGVO
QSPWJEF0SNB%BUBCBTF DPOUFYU$POUFYU PSMBUFJOJUWBSPSNB0SNB%BUBCBTF#FDBVTF,PUMJO NBLFTJUTTUVCTCFGPSF+BWB"OOPUBUJPO1SPDFTTJOHSVOT ,PUMJOLOPXTKVTUOPUIJOHBCPVU 0SNB%BUBCBTF BOEUIFOBNFPGUIFEFDMBSBUJPOJOTUVCTXJMMCFFSSPS/PO&YJTUFOU$MBTT 5IJTCSFBLTUIF"OOPUBUJPO1SPDFTTJOHUPPM*UTBLJOEPGLBQUMJNJUBUJPO BOEXFDVSSFOUMZ EPFTOULOPXBXBZUPpYJUXJUIPVUSFJNQMFNFOUJOH"OOPUBUJPO1SPDFTTJOHJO,PUMJO#VUBTB XPSLBSPVOE ZPVDBODIBOHFUIFSFUVSOUZQFUP%BUBCBTF)BOEMF BOENBLFBOFYQMJDJUDBTU JOTJEFZPVSGVODUJPO UIJTpYFTUIFCVJME JetBrains says
1SPCMFNXJUI%BHHFS %BHHFSDIFDLTBMMpFMETTFUUFSTHFUUFST XIFUIFSPSOPU!*OKFDUJTEFDMBSFE %BHHFS .FNCFST *OKFDUJPO BDUJWJUZ#JOEJOH !*OKFDUBDUJWJUZ1SFTFOUFS ! PO$SFBUF
ʜ PO4UBSU ʜ TFU"DUJWJUZ#JOEJOH FSSPS/PO&YJTJUFOU$MBTT TFU"DUJWJUZ1SFTFOUFS ʜ
8PSLBSPVOE .BLFbFSSPS/PO&YJTUFOU$MBTT`CZZPVSTFMG UIJTJTPVSpSTUXPSLBSPVOE /FWFSVTFHFOFSBUFEDMBTTGPSNFUIPEBSHVNFOU ºWBMCJOEJOH"DUJWJUZ9YY#JOEJOH ˓QSJWBUFWBMCJOEJOH"DUJWJUZ9YY#JOEJOH 4PMVUJPO 'JY%BHHFS
IUUQTHJUIVCDPNHPPHMFEBHHFSQVMM
,BQU FYQFSJNFOUBM (FOFSBUFOPUDMBTTTUVCTCVUKBWBTPVSDFTUVCT BOE/PO&YJTUFOU$MBTTKBWB LU /PO&YTJTUFOU $MBTTKBWB kaptKotlin task
compileKolin task "OOPUBUJPO 1SPDFTTPS "MMUIFLUKBWB
#VJME5JNF NJOTʙNJOTTFDT ,BQU LPUMJO ,BQU EBHHFSQBUDIFE 5PUBMFMBQTFEUJNFGSPNbDMFBO`UPbJOTUBMM"1,b NJOTʙNJOTTFDT
1SPCBCMZ4UBCMF