Repository: incubator-gearpump Updated Branches: refs/heads/master fa3f892d7 -> 0f5f7221e
[GEARPUMP-333] Fix examples assembling Author: manuzhang <[email protected]> Closes #203 from manuzhang/fix_example_dep. Project: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/commit/0f5f7221 Tree: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/tree/0f5f7221 Diff: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/diff/0f5f7221 Branch: refs/heads/master Commit: 0f5f7221ea7ff01e4e2c0d6ee4f7f95b537f5298 Parents: fa3f892 Author: manuzhang <[email protected]> Authored: Wed Aug 2 14:20:55 2017 +0800 Committer: manuzhang <[email protected]> Committed: Wed Aug 2 14:21:09 2017 +0800 ---------------------------------------------------------------------- project/BuildExamples.scala | 90 +++++++++++++++++----------------------- 1 file changed, 37 insertions(+), 53 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/0f5f7221/project/BuildExamples.scala ---------------------------------------------------------------------- diff --git a/project/BuildExamples.scala b/project/BuildExamples.scala index 00affb0..afb7459 100644 --- a/project/BuildExamples.scala +++ b/project/BuildExamples.scala @@ -39,21 +39,9 @@ object BuildExamples extends sbt.Build { example_hbase ) - lazy val example_hbase = Project( - id = "gearpump-examples-hbase", - base = file("examples/streaming/hbase"), - settings = exampleSettings("org.apache.gearpump.streaming.examples.hbase.HBaseConn") ++ - Seq( - libraryDependencies ++= Seq( - "org.apache.hadoop" % "hadoop-common" % hadoopVersion - exclude("commons-beanutils", "commons-beanutils-core") - exclude("commons-beanutils", "commons-beanutils") - exclude("asm", "asm") - exclude("org.ow2.asm", "asm") - ) - ) ++ include("examples/streaming/hbase", "external/hbase") - ) dependsOn(core, streaming % "compile; test->test", external_hbase) - + /** + * The follow examples can be run in IDE or with `sbt run` + */ lazy val wordcountJava = Project( id = "gearpump-examples-wordcountjava", base = file("examples/streaming/wordcount-java"), @@ -82,6 +70,17 @@ object BuildExamples extends sbt.Build { include("examples/streaming/complexdag") ).dependsOn(core, streaming % "compile; test->test") + lazy val pagerank = Project( + id = "gearpump-examples-pagerank", + base = file("examples/pagerank"), + settings = + exampleSettings("org.apache.gearpump.experiments.pagerank.example.PageRankExample") ++ + include("examples/pagerank") + ).dependsOn(core % "provided", streaming % "provided; test->test") + + /** + * The following examples must be submitted to a deployed gearpump clutser + */ lazy val distributedshell = Project( id = "gearpump-examples-distributedshell", base = file("examples/distributedshell"), @@ -90,8 +89,8 @@ object BuildExamples extends sbt.Build { Some("org.apache.gearpump.examples.distributedshell.DistributedShell"), target in assembly := baseDirectory.value.getParentFile / "target" / CrossVersion.binaryScalaVersion(scalaVersion.value) - ) ++ include("examples/distributedshell") - ).dependsOn(core % "compile; test->test") + ) + ).dependsOn(core % "provided; test->test") lazy val distributeservice = Project( id = "gearpump-examples-distributeservice", @@ -109,7 +108,18 @@ object BuildExamples extends sbt.Build { "io.spray" %% "spray-routing-shapeless2" % sprayVersion ) ) ++ include("examples/distributeservice") - ).dependsOn(core % "compile; test->test") + ).dependsOn(core % "provided; test->test") + + lazy val example_hbase = Project( + id = "gearpump-examples-hbase", + base = file("examples/streaming/hbase"), + settings = exampleSettings("org.apache.gearpump.streaming.examples.hbase.HBaseConn") ++ + Seq( + libraryDependencies ++= Seq( + "org.apache.hadoop" % "hadoop-common" % hadoopVersion % "provided" + ) + ) + ) dependsOn(core % "provided", streaming % "provided; test->test", external_hbase) lazy val fsio = Project( id = "gearpump-examples-fsio", @@ -117,26 +127,17 @@ object BuildExamples extends sbt.Build { settings = exampleSettings("org.apache.gearpump.streaming.examples.fsio.SequenceFileIO") ++ Seq( libraryDependencies ++= Seq( - "org.apache.hadoop" % "hadoop-common" % hadoopVersion - exclude("org.mortbay.jetty", "jetty-util") - exclude("org.mortbay.jetty", "jetty") - exclude("org.fusesource.leveldbjni", "leveldbjni-all") - exclude("tomcat", "jasper-runtime") - exclude("commons-beanutils", "commons-beanutils-core") - exclude("commons-beanutils", "commons-beanutils") - exclude("asm", "asm") - exclude("org.ow2.asm", "asm") + "org.apache.hadoop" % "hadoop-common" % hadoopVersion % "provided" ) - ) ++ include("examples/streaming/fsio") - ).dependsOn(core, streaming % "compile; test->test") + ) + ).dependsOn(core % "provided", streaming % "provided; test->test") lazy val examples_kafka = Project( id = "gearpump-examples-kafka", base = file("examples/streaming/kafka"), settings = - exampleSettings("org.apache.gearpump.streaming.examples.kafka.wordcount.KafkaWordCount") ++ - include("examples/streaming/kafka", "external/kafka") - ).dependsOn(core, streaming % "compile; test->test", external_kafka) + exampleSettings("org.apache.gearpump.streaming.examples.kafka.wordcount.KafkaWordCount") + ).dependsOn(core % "provided", streaming % "provided; test->test", external_kafka) lazy val examples_state = Project( id = "gearpump-examples-state", @@ -144,30 +145,13 @@ object BuildExamples extends sbt.Build { settings = exampleSettings("org.apache.gearpump.streaming.examples.state.MessageCountApp") ++ Seq( libraryDependencies ++= Seq( - "org.apache.hadoop" % "hadoop-common" % hadoopVersion - exclude("org.mortbay.jetty", "jetty-util") - exclude("org.mortbay.jetty", "jetty") - exclude("org.fusesource.leveldbjni", "leveldbjni-all") - exclude("tomcat", "jasper-runtime") - exclude("commons-beanutils", "commons-beanutils-core") - exclude("commons-beanutils", "commons-beanutils") - exclude("asm", "asm") - exclude("org.ow2.asm", "asm"), - "org.apache.hadoop" % "hadoop-hdfs" % hadoopVersion + "org.apache.hadoop" % "hadoop-common" % hadoopVersion % "provided", + "org.apache.hadoop" % "hadoop-hdfs" % hadoopVersion % "provided" ) - ) ++ include("examples/streaming/state", - "external/hadoopfs", "external/monoid", "external/serializer", "external/kafka") - ).dependsOn(core, streaming % "compile; test->test", + ) + ).dependsOn(core % "provided", streaming % "provided; test->test", external_hadoopfs, external_monoid, external_serializer, external_kafka) - lazy val pagerank = Project( - id = "gearpump-examples-pagerank", - base = file("examples/pagerank"), - settings = - exampleSettings("org.apache.gearpump.experiments.pagerank.example.PageRankExample") ++ - include("examples/pagerank") - ).dependsOn(core, streaming % "compile; test->test") - private def exampleSettings(className: String): Seq[Def.Setting[_]] = commonSettings ++ noPublish ++ myAssemblySettings ++ Seq( mainClass in(Compile, packageBin) :=
