pekko-sample-kafka-to-sharding-scala/build.sbt (61 lines of code) (raw):

val pekkoVersion = "1.1.3" val pekkoHttpVersion = "1.1.0" val pekkoConnectorsKafkaVersion = "1.1.0" val pekkoManagementVersion = "1.1.0" val EmbeddedKafkaVersion = "2.4.1.1" val logbackVersion = "1.3.15" val slf4jVersion = "2.0.16" ThisBuild / scalaVersion := "3.3.4" ThisBuild / organization := "org.apache.pekko" ThisBuild / Compile / scalacOptions ++= Seq( "-deprecation", "-feature", "-unchecked", "-Xlog-reflective-calls", "-Xlint") ThisBuild / Compile / javacOptions ++= Seq("-Xlint:unchecked", "-Xlint:deprecation") ThisBuild / Test / testOptions += Tests.Argument("-oDF") ThisBuild / licenses := Seq(("CC0", url("http://creativecommons.org/publicdomain/zero/1.0"))) Global / cancelable := true // ctrl-c lazy val `pekko-sample-kafka-to-sharding` = project.in(file(".")).aggregate(producer, processor, client) lazy val kafka = project .in(file("kafka")) .settings( libraryDependencies ++= Seq( "ch.qos.logback" % "logback-classic" % logbackVersion, "org.slf4j" % "log4j-over-slf4j" % slf4jVersion, "io.github.embeddedkafka" %% "embedded-kafka" % EmbeddedKafkaVersion), cancelable := false) lazy val client = project .in(file("client")) .enablePlugins(PekkoGrpcPlugin, JavaAgent) .settings( libraryDependencies ++= Seq( "org.apache.pekko" %% "pekko-stream" % pekkoVersion, "org.apache.pekko" %% "pekko-discovery" % pekkoVersion)) lazy val processor = project .in(file("processor")) .enablePlugins(PekkoGrpcPlugin, JavaAgent) .settings(javaAgents += "org.mortbay.jetty.alpn" % "jetty-alpn-agent" % "2.0.9" % "runtime;test") .settings(libraryDependencies ++= Seq( "org.apache.pekko" %% "pekko-connectors-kafka" % pekkoConnectorsKafkaVersion, "org.apache.pekko" %% "pekko-connectors-kafka-cluster-sharding" % pekkoConnectorsKafkaVersion, "org.apache.pekko" %% "pekko-stream" % pekkoVersion, "org.apache.pekko" %% "pekko-discovery" % pekkoVersion, "org.apache.pekko" %% "pekko-cluster-sharding-typed" % pekkoVersion, "org.apache.pekko" %% "pekko-stream-typed" % pekkoVersion, "org.apache.pekko" %% "pekko-serialization-jackson" % pekkoVersion, "org.apache.pekko" %% "pekko-management" % pekkoManagementVersion, "org.apache.pekko" %% "pekko-management-cluster-http" % pekkoManagementVersion, "org.apache.pekko" %% "pekko-http-spray-json" % pekkoHttpVersion, "ch.qos.logback" % "logback-classic" % logbackVersion, "org.apache.pekko" %% "pekko-actor-testkit-typed" % pekkoVersion % Test, "org.scalatest" %% "scalatest" % "3.2.19" % Test)) lazy val producer = project .in(file("producer")) .settings(Compile / PB.targets := Seq(scalapb.gen() -> (Compile / sourceManaged).value)) .settings(libraryDependencies ++= Seq( "org.apache.pekko" %% "pekko-connectors-kafka" % pekkoConnectorsKafkaVersion, "org.apache.pekko" %% "pekko-stream" % pekkoVersion, "ch.qos.logback" % "logback-classic" % logbackVersion, "org.scalatest" %% "scalatest" % "3.2.19" % Test))