Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.50 KB | None | 0 0
  1. lazy val slickVersion = "3.2.0"
  2.  
  3. libraryDependencies ++= Seq(
  4. "com.typesafe.slick" %% "slick" % slickVersion,
  5. "com.typesafe.slick" %% "slick-hikaricp" % slickVersion,
  6. "com.typesafe.slick" %% "slick-codegen" % slickVersion % "compile",
  7. "org.postgresql" % "postgresql" % "9.4.1212",
  8. "com.typesafe.slick" %% "slick-testkit" % "3.2.0" % "test"
  9. )
  10.  
  11. // code generation task
  12. lazy val slick = TaskKey[Seq[File]]("gen-tables")
  13. lazy val slickCodeGenTask = (sourceManaged, dependencyClasspath in Compile, runner in Compile, streams) map { (dir, cp, r, s) =>
  14. val outputDir = (dir / "slick").getPath // place generated files in sbt's managed sources folder
  15. val url = "jdbc:postgresql://localhost:5432/github_info?user=postgres&password=root&sslmode=disable" // connection info for a pre-populated throw-away, in-memory db for this demo, which is freshly initialized on every run
  16. val jdbcDriver = "org.postgresql.Driver"
  17. val slickDriver = "slick.jdbc.PostgresProfile"
  18. val pkg = "com.knoldus.github.models"
  19. toError(r.run("slick.codegen.SourceCodeGenerator", cp.files, Array(slickDriver, jdbcDriver, url, outputDir, pkg), s.log))
  20. val fname = outputDir + "/com/knoldus/github/models/Tables.scala"
  21. Seq(file(fname))
  22. }
  23.  
  24. slick <<= slickCodeGenTask // register manual sbt command
  25. sourceGenerators in Compile <+= slickCodeGenTask // register automatic code generation on every compile, remove for only manual use
  26.  
  27. testOptions += Tests.Argument(TestFrameworks.JUnit, "-q", "-v", "-s", "-a")
  28.  
  29. parallelExecution in Test := false
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement