More Related Content
Similar to Sbtのマルチプロジェクトはいいぞ (20)
Sbtのマルチプロジェクトはいいぞ
- 2. 2 . 1
こんにちは
Yoshitaka Fujii
Software Engineer
Scala / Java / Python / Typescript
Scala 関西Summit 2016 Sta
@yoshiyoshifujii
- 7. 7
積極的な活用例lazy val root = (project in file(".")).
enablePlugins(ReleasePlugin).
aggregate(core,jwt,awsCore,awsS3,awsDynamoDB,awsSQS,awsKinesis,awsLambda4ApiGateway,awsLambda4K
settings(commonSettings: _*).
settings(publishSettings: _*).
settings(
name := "modules-lambda"
)
lazy val core = (project in file("core")).
enablePlugins(ReleasePlugin).
settings(commonSettings: _*).
settings(publishSettings: _*).
settings(
description := "Common modules.",
name := "modules-lambda-core",
libraryDependencies ++= coreDeps
)
lazy val jwt = (project in file("jwt")).
enablePlugins(ReleasePlugin).
dependsOn(core).
- 10. build.sbt
lazy val root = (project in file("./root"))
lazy val sample = (project in file("./sample"))
sbt
$ sbt
>
directories
$ ls -l
root/
sample/
- 15. 14
Build.scala
lazy val root = Project("root", file("."), settings = mainSettings)
lazy val mainSettings = Seq(
organization := "com.github.seratch",
name := "awscala",
version := "0.5.6",
scalaVersion := "2.11.8",
crossScalaVersions := Seq("2.11.8", "2.10.6"),
publishMavenStyle := true,
resolvers += "spray repo" at "http://repo.spray.io",
libraryDependencies ++= Seq(
"com.amazonaws" % "aws-java-sdk-iam" % awsJavaSdkVersion,
"com.amazonaws" % "aws-java-sdk-sts" % awsJavaSdkVersion,
"com.amazonaws" % "aws-java-sdk-ec2" % awsJavaSdkVersion,
"com.amazonaws" % "aws-java-sdk-s3" % awsJavaSdkVersion,
"com.amazonaws" % "aws-java-sdk-sqs" % awsJavaSdkVersion,
"com.amazonaws" % "aws-java-sdk-emr" % awsJavaSdkVersion,
"com.amazonaws" % "aws-java-sdk-redshift" % awsJavaSdkVersion,
"com.amazonaws" % "aws-java-sdk-dynamodb" % awsJavaSdkVersion,
"com.amazonaws" % "aws-java-sdk-simpledb" % awsJavaSdkVersion,
"joda-time" % "joda-time" % "2.9.4",
"org.joda" % "joda-convert" % "1.8.1",
- 17. Build.scala
lazy val root = Project("root", file(".")).
aggregate(awscalaCore,
awscalaS3,
awscalaDynamoDBv2,
awscalaSQS,
awscalaEC2,
awscalaEMR,
awscalaIAM,
awscalaRedshift,
awscalaSimpleDB,
awscalaSTS)
lazy val commonSettings = Seq(
organization := "com.github.seratch",
version := "0.6.0-SNAPSHOT",
scalaVersion := "2.11.8",
crossScalaVersions := Seq("2.11.8", "2.10.6"),
publishMavenStyle := true,
resolvers += "spray repo" at "http://repo.spray.io",
sbtPlugin := false,
transitiveClassifiers in Global := Seq(Artifact.SourceClassifier),
incOptions := incOptions.value.withNameHashing(true),