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.4k
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
SREのキャリアから経営に近づく - Enterprise Risk Managementを基に -
shonansurvivors
1
530
書籍『実践 Apache Iceberg』の歩き方
ishikawa_satoru
0
390
어떤 개발자가 되고 싶은가?
arawn
1
350
今から間に合う re:Invent 準備グッズと現地の地図、その他ラスベガスを周る際の Tips/reinvent-preparation-guide
emiki
1
200
初海外がre:Inventだった人間の感じたこと
tommy0124
1
150
【SORACOM UG Explorer 2025】さらなる10年へ ~ SORACOM MVC 発表
soracom
PRO
0
190
Observability — Extending Into Incident Response
nari_ex
1
660
現場の壁を乗り越えて、 「計装注入」が拓く オブザーバビリティ / Beyond the Field Barriers: Instrumentation Injection and the Future of Observability
aoto
PRO
1
750
組織全員で向き合うAI Readyなデータ利活用
gappy50
5
2k
Raycast AI APIを使ってちょっと便利なAI拡張機能を作ってみた
kawamataryo
0
230
GPUをつかってベクトル検索を扱う手法のお話し~NVIDIA cuVSとCAGRA~
fshuhe
0
310
Zero Trust DNS でより安全なインターネット アクセス
murachiakira
0
130
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
140
7.2k
How to Ace a Technical Interview
jacobian
280
24k
Thoughts on Productivity
jonyablonski
71
4.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
What's in a price? How to price your products and services
michaelherold
246
12k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
190
55k
Speed Design
sergeychernyshev
32
1.2k
Agile that works and the tools we love
rasmusluckow
331
21k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
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