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
LINEギフトにおけるバックエンド開発
lycorptech_jp
PRO
0
280
大規模アジャイルフレームワークから学ぶエンジニアマネジメントの本質
staka121
PRO
3
1.2k
OPENLOGI Company Profile for engineer
hr01
1
20k
クラウド関連のインシデントケースを収集して見えてきたもの
lhazy
7
990
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
320
IAMポリシーのAllow/Denyについて、改めて理解する
smt7174
2
210
偏光画像処理ライブラリを作った話
elerac
1
170
生成AI “再”入門 2025年春@WIRED TUESDAY EDITOR'S LOUNGE
kajikent
0
110
What's new in Go 1.24?
ciarana
1
110
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
600
AIエージェント入門
minorun365
PRO
31
18k
遷移の高速化 ヤフートップの試行錯誤
narirou
6
1.2k
Featured
See All Featured
Being A Developer After 40
akosma
89
590k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Fireside Chat
paigeccino
34
3.2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
A designer walks into a library…
pauljervisheath
205
24k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
260
Java REST API Framework Comparison - PWX 2021
mraible
29
8.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
Building Your Own Lightsaber
phodgson
104
6.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
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 "DUJWJUZ@.FNCFST*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 "DUJWJUZ@.FNCFST*OKFDUPSLU LU LU º(FOFSBUFE "DUJWJUZLU !*OKFDU "DUJWJUZ@.FNCFST*OKFDUPSKBWB
LU º(FOFSBUFE LPUMJOD KBWBD XJUI+43 LPUMJODEPFTO`UTVQQPSU+43 KBWBDDBO`USFBEBOOPUBUJPOPGLU
,BQU "OOPUBUJPO1SPDFTTPSGPSLPUMJO -FUKBWBDSFBELUBOOPUBUJPO "DUJWJUZLU "DUJWJUZ@.FNCFST*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