kotlinの周辺環境ハマりメモ
はじめに
kotlin自体はlamda使えない環境では良い言語だと思うんだけど、
周辺環境が全然整ってないな~というのが実感。
再度調べそうなので自メモ
FindBugs
UI周りをKotlinに置き換えたらFindBugsが実行できない時の顔😱Kotlinのコンパイラがクラッシュしてる😵
— さきちゃんの中の人、カピバラになりたい🐁 (@serenegiant) 2018年6月11日
Error:Kotlin: [Internal Error] java.lang.IllegalStateException: The provided plugin org.jetbrains.kotlin.kapt3.Kapt3ComponentRegistrar is not compatible with this version of compilerってでる😂
— さきちゃんの中の人、カピバラになりたい🐁 (@serenegiant) 2018年6月11日
FindBugsってバイトコードの検査だから動きそうだと思うんだけど🤔ソースコードに対応付けるところがおかしくなるのはしょうがないとしても😥DoxygenはそもそもKotlin相手にしてないからなぁ、でもASからのJavaDoc生成でもkotlinのファイルを含めてくれない(KDocだから?)のが仕事で使うには痛い😰
— さきちゃんの中の人、カピバラになりたい🐁 (@serenegiant) 2018年6月11日
- CheckStyle
- FindBugs
- 処理が止まるので論外
- PMD
- error-phone
辺り全部ダメ。Javaとkotlin混成しててもJavaのみ対応
動いてるのは公式のAndroid Lintぐらいかなー
KSDocの話
AS3.1.2のTools→Generate JavaDocを実行する時にダイアログで生成するJavaDocのスコープを指定できるけどそこで指定したスコープは無効でJavaのクラスが無いんじゃぁと言われる🙃実際には対応するスコープ(appとかプロジェクトのルート)のフォルダを選択した状態で実行しないといけん😔
— さきちゃんの中の人、カピバラになりたい🐁 (@serenegiant) 2018年6月11日
自分もこれハマりました・・。kotlinのソースしかないカスタムスコープ設定した場合同じ現象に・・
gradlew dokkaって実行したら98%からどっか行ってもうて帰ってこない😵
— さきちゃんの中の人、カピバラになりたい🐁 (@serenegiant) 2018年6月11日
KotlinからJavaに戻すかどうか思案中😪
— さきちゃんの中の人、カピバラになりたい🐁 (@serenegiant) 2018年6月11日
Dokkaだと自動生成のRとかDataBindingとか紛れ込んじゃうので諦めてJavaへ戻し中😰コミット古いので元のJavaのを別ディレクトリに出してJavaとKotlinを目diff👀
— さきちゃんの中の人、カピバラになりたい🐁 (@serenegiant) 2018年6月11日
SourceSet必須なんですね、フレーバーが複数あって面倒だったので省略してました💦確かに普通にJavaDoc出すと数秒で終わるのがDokkaだと15分以上かかってましたです😵
— さきちゃんの中の人、カピバラになりたい🐁 (@serenegiant) June 13, 2018
小鳥屋さんが書いてるソースは規模が小さいんじゃなかろうかと思ってみたり😑GitHubとかで見てもpublicメソッドにもKDoc無いの多いし
参考ページ
因みにkotlinって
/** * */
じゃないとエディタ上でコメントハイライトとして認識してくんないんだよなー [//]は駄目な感じで・・・。
あとJavadoc add みたいなメニューも Alt+Enter で出てこないし・・*1
所感的に同意してしまう話
KotlinもFlutterも現状では趣味や暇な会社はともかく自分が仕事で使うのは無理やな😰確かにコードは短くなるし便利な記述方法もたくさんあるけどそれによって生まれる余裕を遥かに上回って開発環境の不具合やドキュメント作成に時間が溶ける😱
— さきちゃんの中の人、カピバラになりたい🐁 (@serenegiant) 2018年6月11日
*1:これすごく不便