-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathbuild.sbt
49 lines (44 loc) · 1.6 KB
/
build.sbt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
val projectVersion = "1.2.0"
val projectScalaVersion = "2.12.10"
val ksqlVersion = "5.4.0"
val kafkaVersion = "2.4.0"
val scalaTestVersion = "3.1.0"
val scalaMockVersion = "3.6.0"
val wsApiVersion = "2.1.1"
val repos = Seq(
"Confluent Maven Repo" at "https://packages.confluent.io/maven/",
"Confluent Snapshots Maven Repo" at "https://s3-us-west-2.amazonaws.com/confluent-snapshots/",
Resolver.mavenLocal
)
val dependencies = Seq(
"io.confluent.ksql" % "ksql-rest-app" % ksqlVersion,
"org.apache.kafka" %% "kafka" % kafkaVersion % "test",
"org.scalatest" %% "scalatest" % scalaTestVersion % "test",
"org.scalamock" %% "scalamock-scalatest-support" % scalaMockVersion % "test",
"javax.ws.rs" % "javax.ws.rs-api" % wsApiVersion artifacts Artifact("javax.ws.rs-api", "jar", "jar")
)
val common = Seq(
organization := "com.github.mmolimar",
name := "ksql-jdbc-driver",
version := projectVersion,
scalaVersion := projectScalaVersion,
crossScalaVersions := Seq("2.11.12", projectScalaVersion),
resolvers ++= repos,
libraryDependencies ++= dependencies
)
lazy val root = project.in(file("."))
.configs(Configs.all: _*)
.settings(
common,
Tests.settings
)
.enablePlugins(ScoverageSbtPlugin, CoverallsPlugin, AssemblyPlugin)
assemblyMergeStrategy in assembly := {
case PathList("javax", "inject", _*) => MergeStrategy.first
case PathList("javax", "annotation", _*) => MergeStrategy.first
case "module-info.class" => MergeStrategy.discard
case "log4j.properties" => MergeStrategy.discard
case x =>
val oldStrategy = (assemblyMergeStrategy in assembly).value
oldStrategy(x)
}