🐡
Bolt for Java を Scalaで動かす
この記事
以下公式をScala
で動かしてみたので共有
準備
- Intellijで
Scala
&sbt
でプロジェクトを作成する - Slackアプリを作っておく
コード
// build.sbt
libraryDependencies += "com.slack.api" % "bolt" % "1.18.0"
libraryDependencies += "com.slack.api" % "bolt-socket-mode" % "1.18.0"
libraryDependencies += "javax.websocket" % "javax.websocket-api" % "1.1"
libraryDependencies += "org.glassfish.tyrus.bundles" % "tyrus-standalone-client" % "1.17"
// src/main/scala/Main.scala
import com.slack.api.bolt.App
import com.slack.api.bolt.handler.builtin.SlashCommandHandler
import com.slack.api.bolt.socket_mode.SocketModeApp
object Main {
def main(args: Array[String]): Unit = {
val app = new App()
val slashCommandHandler: SlashCommandHandler = (req, ctx) => {
ctx.ack(":wave: Hello!")
}
app.command("/hello", slashCommandHandler)
new SocketModeApp(app).start()
}
}
環境変数の設定方法
-
sbtタスクを追加
-
手動で環境変数を追加する
作成したタスクをRunすれば動作。
Discussion