👋
KotlinでgRPC Serverの最小構成
とりあえず結論
GitHubに上げましたので、コピーなりなんなりしてご利用ください。
ディレクトリ構成
src/main/proto
にprotoファイルを記載します
src/main/kotlin
に実際のプロダクトコードを記載します
コード生成
以下のいずれかの方法で生成します。
- コマンドで生成する場合は、
./gradlew generateProto
- IDEで生成する場合は、Gradle > Tasks > other > generateProto
気をつけたこと
無料で開発
これまでのServer-side KotlinはIntelliJのUltimate Editionで開発する必要があり、お金がかかりました。
無料で開発できるようにCommunity Editionでできるようにしました。
生成したファイルを補完候補に入れる
.protoから生成したファイルは、build/generated/source/proto/main
に配置されますが、
これらをIDEに教えてあげる必要があるので、以下をbuild.gradle.kts
に追加します
sourceSets {
main {
resources {
srcDir("src/main/proto")
}
java {
srcDir("build/generated/source/proto/main/grpc")
srcDir("build/generated/source/proto/main/grpckt")
srcDir("build/generated/source/proto/main/java")
}
}
}
参考資料
Discussion