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
7.5k
1
Share
Kotlin Annotation Processor Tools(kapt)
TISとのLTでのKotlin Annotation Processor Tools(kapt)の話
kapt1、kapt2、dagger2のworkaroundとか動作とか調べたやつ
Naohiro Yoshida
March 07, 2017
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
目的ファーストのハーネス設計 ~ハーネスの変更容易性を高めるための優先順位~
gotalab555
8
2.2k
[OAWTT26][THR1028] Oracle AI Database 26ai へのアップグレード:ベストプラクティスと最新情報
oracle4engineer
PRO
1
110
小説執筆のハーネスエンジニアリング
yoshitetsu
0
710
[最強DB講義]推薦システム | 基礎編
recsyslab
PRO
1
170
OpenClaw - Nerdearla 2026
pablokbs
0
110
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
4
1.8k
みんなで作るAWS Tips 100連発 (FinOps編)
schwrzktz
1
300
The Journey of Box Building
tagomoris
4
3k
AgentCore×VPCでの設計パターンn選と勘所
har1101
3
290
これからの「データマネジメント」の話をしよう
sansantech
PRO
0
110
20年前の「OSS革命」に学ぶ AI時代の生存戦略
samakada
0
440
ハーネスエンジニアリングの概要と設計思想
sergicalsix
9
5k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
320
RailsConf 2023
tenderlove
30
1.4k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
220
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
410
Code Reviewing Like a Champion
maltzj
528
40k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.9k
Amusing Abliteration
ianozsvald
1
160
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
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