2016-06-15 22 views
1

Ich versuche, eine RStudio-ähnliche Erfahrung für Scala und Funken zu erstellen. Nach herauszufinden, wie man es richtig auf Win7x64 (einschließlich Scala 2.10.5) zu installieren, ich vor dem Problem, dass die Version des InterpretersScala IDE: Einstellung der Version von Scala-Interpreter

scala> scala.tools.nsc.Properties.versionString 
res1: String = version 2.11.8 

von der Version spark-shell scala unterscheidet

scala> scala.tools.nsc.Properties.versionString 
res1: String = version 2.10.5 

und von der scala Version (cmd.exe)

C:\>scala -version 
Scala code runner version 2.10.5 -- Copyright 2002-2013, LAMP,EPFL 

Welche meine Probleme verursacht nach this answer Probleme, wenn starti ng Funke von der Dolmetscher

scala> val sc = new SparkContext(conf) 
java.lang.NoSuchMethodError: scala. 
collection.immutable.HashSet$.empty()Lscala/collection/immutable/HashSet; 

Frage: Wo finde ich gesetzt/konfigurieren, dass die Version der Interpreter verwendet? Das Durchsuchen der globalen Einstellungen der Scala-IDE nach "Interpreter" ergab keine Ergebnisse. Scheint etwas zu sein, das zusammen mit der Scala IDE geliefert wurde?

(Funke 1.6.1, hadoop 2.6, IDE Scala 4.4.1, Scala 2.10.5, zumindest das ist, wie es sein sollte)

Antwort

1

Statt eine bestimmte scala REPL Installation verwenden, können Sie immer verwenden sbt console und eine build.sbt Datei, um die richtige Version zu erstellen.

Wenn Sie Ihrem Hauptverzeichnis eine build.sbt Datei hinzufügen, sollte Scala IDE die Version verwenden, die Sie verwenden möchten.

~/test2$ cat build.sbt 
scalaVersion := "2.11.7" 
~/test2$ sbt console 
[info] Set current project to test2 (in build file:/projects/9ab40ff8-31cd-4860-9cc9-ceb67d1afa39/test2/) 
[info] Updating {file:/projects/9ab40ff8-31cd-4860-9cc9-ceb67d1afa39/test2/}test2... 
[info] Resolving jline#jline;2.12.1 ... 
[info] Done updating. 
[info] Starting scala interpreter... 
[info] 
Welcome to Scala version 2.11.7 (OpenJDK 64-Bit Server VM, Java 1.7.0_101). 
Type in expressions to have them evaluated. 
Type :help for more information. 

scala> :q 

[success] Total time: 24 s, completed Jun 16, 2016 9:18:19 PM 
~/test2$ echo 'scalaVersion := "2.10.5"' > build.sbt 
~/test2$ cat build.sbt 
scalaVersion := "2.10.5" 
~/test2$ sbt console 
[info] Set current project to test2 (in build file:/projects/9ab40ff8-31cd-4860-9cc9-ceb67d1afa39/test2/) 
[info] Updating {file:/projects/9ab40ff8-31cd-4860-9cc9-ceb67d1afa39/test2/}test2... 
[info] Resolving org.fusesource.jansi#jansi;1.4 ... 
[info] Done updating. 
[info] 'compiler-interface' not yet compiled for Scala 2.10.5. Compiling... 
[info] Compilation completed in 61.292 s 
[info] Starting scala interpreter... 
[info] 
Welcome to Scala version 2.10.5 (OpenJDK 64-Bit Server VM, Java 1.7.0_101). 
Type in expressions to have them evaluated. 
Type :help for more information. 

scala> :q 

[success] Total time: 77 s, completed Jun 16, 2016 9:20:45 PM 

können Sie auch Bibliothek Abhängigkeiten von Orten wie mvnrepository angeben und sbt werden sie (falls nicht bereits heruntergeladen) herunterladen und fügen Sie sie Classpath Ihre REPL.

Als letzte beiseite, überprüfen Sie Jupyter Scala für eine Ipython-esque Notebook-Schnittstelle für Scala.