Creating simple.sbt and src/ in $SPARK_HOME allows me to run a standalone scala 
program in the downloaded spark code tree. For example my directory layout is:
$ ls spark-0.9.0-incubating-bin-hadoop2
…
simple.sbt
src
…

$ tree src
src
`-- main
    `-- scala
        `— SimpleApp.scala

— Bharath

On 25-Mar-2014, at 1:46 am, Diana Carroll <dcarr...@cloudera.com> wrote:

> Thanks Ongen.
> 
> Unfortunately I'm not able to follow your instructions either.  In particular:
> 
> sbt compile
> sbt run <arguments if any>
> 
> This doesn't work for me because there's no program on my path called "sbt".  
> The instructions in the Quick Start guide are specific that I should call 
> "$SPARK_HOME/sbt/sbt".  I don't have any other executable on my system called 
> "sbt".
> 
> Did you download and install sbt separately?  In following the Quick Start 
> guide, that was not stated as a requirement, and I'm trying to run through 
> the guide word for word.
> 
> Diana
> 
> 
> On Mon, Mar 24, 2014 at 4:12 PM, Ognen Duzlevski 
> <og...@plainvanillagames.com> wrote:
> Diana,
> 
> Anywhere on the filesystem you have read/write access (you need not be in 
> your spark home directory):
> 
> mkdir myproject
> cd myproject
> mkdir project
> mkdir target
> mkdir -p src/main/scala
> cp $mypath/$mymysource.scala src/main/scala/
> cp $mypath/myproject.sbt .
> 
> Make sure that myproject.sbt has the following in it:
> 
> name := "I NEED A NAME!"
> 
> version := "I NEED A VERSION!"
> 
> scalaVersion := "2.10.3"
> 
> libraryDependencies += "org.apache.spark" % "spark-core_2.10" % 
> "0.9.0-incubating"
> 
> If you will be using Hadoop/HDFS functionality you will need the below line 
> also
> 
> libraryDependencies += "org.apache.hadoop" % "hadoop-client" % "2.2.0"
> 
> The above assumes you are using Spark 0.9 and Scala 2.10.3. If you are using 
> 0.8.1 - adjust appropriately.
> 
> That's it. Now you can do
> 
> sbt compile
> sbt run <arguments if any>
> 
> You can also do
> sbt package to produce a jar file of your code which you can then add to the 
> SparkContext at runtime.
> 
> In a more complicated project you may need to have a bit more involved 
> hierarchy like com.github.dianacarroll which will then translate to 
> src/main/scala/com/github/dianacarroll/ where you can put your multiple 
> .scala files which will then have to be a part of a package 
> com.github.dianacarroll (you can just put that as your first line in each of 
> these scala files). I am new to Java/Scala so this is how I do it. More 
> educated Java/Scala programmers may tell you otherwise ;)
> 
> You can get more complicated with the sbt project subrirectory but you can 
> read independently about sbt and what it can do, above is the bare minimum.
> 
> Let me know if that helped.
> Ognen
> 
> 
> On 3/24/14, 2:44 PM, Diana Carroll wrote:
> Has anyone successfully followed the instructions on the Quick Start page of 
> the Spark home page to run a "standalone" Scala application?  I can't, and I 
> figure I must be missing something obvious!
> 
> I'm trying to follow the instructions here as close to "word for word" as 
> possible:
> http://spark.apache.org/docs/latest/quick-start.html#a-standalone-app-in-scala
> 
> 1.  The instructions don't say what directory to create my test application 
> in, but later I'm instructed to run "sbt/sbt" so I conclude that my working 
> directory must be $SPARK_HOME.  (Temporarily ignoring that it is a little 
> weird to be working directly in the Spark distro.)
> 
> 2.  Create $SPARK_HOME/mysparktest/src/main/scala/SimpleApp.scala.  
> Copy&paste in the code from the instructions exactly, replacing 
> YOUR_SPARK_HOME with my spark home path.
> 
> 3.  Create $SPARK_HOME/mysparktest/simple.sbt.  Copy&paste in the sbt file 
> from the instructions
> 
> 4.  From the $SPARK_HOME I run "sbt/sbt package".  It runs through the ENTIRE 
> Spark project!  This takes several minutes, and at the end, it says "Done 
> packaging".  unfortunately, there's nothing in the $SPARK_HOME/mysparktest/ 
> folder other than what I already had there.
> 
> (Just for fun, I also did what I thought was more logical, which is set my 
> working directory to $SPARK_HOME/mysparktest, and but $SPARK_HOME/sbt/sbt 
> package, but that was even less successful: I got an error:
> awk: cmd. line:1: fatal: cannot open file `./project/build.properties' for 
> reading (No such file or directory)
> Attempting to fetch sbt
> /usr/lib/spark/sbt/sbt: line 33: sbt/sbt-launch-.jar: No such file or 
> directory
> /usr/lib/spark/sbt/sbt: line 33: sbt/sbt-launch-.jar: No such file or 
> directory
> Our attempt to download sbt locally to sbt/sbt-launch-.jar failed. Please 
> install sbt manually from http://www.scala-sbt.org/
> 
> 
> So, help?  I'm sure these instructions work because people are following them 
> every day, but I can't tell what they are supposed to do.
> 
> Thanks!
> Diana
> 
> 

Reply via email to