2017-09-26 3 views
8

Ich habe gerade installiert Funke auf meinem neuen Rechner und erhalten den folgenden Fehler nach der Installation von Java, Scala und Apache-Funke mit Homebrew. Der Installationsvorgang ist unten angegeben:Spark Shell "Fehler beim Initialisieren Compiler" Fehler auf einem Mac

$ brew cask install java 
$ brew install scala 
$ brew install apache-spark 

Einmal installiert, wenn ich versuche, ein einfaches Beispiel mit spark-shell zu laufen, bekomme ich die folgende Fehlermeldung. Jede Hilfe sehr geschätzt.

$ spark-shell 
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties 
Setting default log level to "WARN". 
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel). 

Failed to initialize compiler: object java.lang.Object in compiler mirror not found. 
** Note that as of 2.8 scala does not assume use of the java classpath. 
** For the old behavior pass -usejavacp to scala, or if using a Settings 
** object programmatically, settings.usejavacp.value = true. 

Failed to initialize compiler: object java.lang.Object in compiler mirror not found. 
** Note that as of 2.8 scala does not assume use of the java classpath. 
** For the old behavior pass -usejavacp to scala, or if using a Settings 
** object programmatically, settings.usejavacp.value = true. 
Exception in thread "main" java.lang.NullPointerException 
    at scala.reflect.internal.SymbolTable.exitingPhase(SymbolTable.scala:256) 
    at scala.tools.nsc.interpreter.IMain$Request.x$20$lzycompute(IMain.scala:896) 
    at scala.tools.nsc.interpreter.IMain$Request.x$20(IMain.scala:895) 
    at scala.tools.nsc.interpreter.IMain$Request.headerPreamble$lzycompute(IMain.scala:895) 
    at scala.tools.nsc.interpreter.IMain$Request.headerPreamble(IMain.scala:895) 
    at scala.tools.nsc.interpreter.IMain$Request$Wrapper.preamble(IMain.scala:918) 
    at scala.tools.nsc.interpreter.IMain$CodeAssembler$$anonfun$apply$23.apply(IMain.scala:1337) 
    at scala.tools.nsc.interpreter.IMain$CodeAssembler$$anonfun$apply$23.apply(IMain.scala:1336) 
    at scala.tools.nsc.util.package$.stringFromWriter(package.scala:64) 
    at scala.tools.nsc.interpreter.IMain$CodeAssembler$class.apply(IMain.scala:1336) 
    at scala.tools.nsc.interpreter.IMain$Request$Wrapper.apply(IMain.scala:908) 
    at scala.tools.nsc.interpreter.IMain$Request.compile$lzycompute(IMain.scala:1002) 
    at scala.tools.nsc.interpreter.IMain$Request.compile(IMain.scala:997) 
    at scala.tools.nsc.interpreter.IMain.compile(IMain.scala:579) 
    at scala.tools.nsc.interpreter.IMain.interpret(IMain.scala:567) 
    at scala.tools.nsc.interpreter.IMain.interpret(IMain.scala:565) 
    at scala.tools.nsc.interpreter.ILoop.interpretStartingWith(ILoop.scala:807) 
    at scala.tools.nsc.interpreter.ILoop.command(ILoop.scala:681) 
    at scala.tools.nsc.interpreter.ILoop.processLine(ILoop.scala:395) 
    at org.apache.spark.repl.SparkILoop$$anonfun$initializeSpark$1.apply$mcV$sp(SparkILoop.scala:38) 
    at org.apache.spark.repl.SparkILoop$$anonfun$initializeSpark$1.apply(SparkILoop.scala:37) 
    at org.apache.spark.repl.SparkILoop$$anonfun$initializeSpark$1.apply(SparkILoop.scala:37) 
    at scala.tools.nsc.interpreter.IMain.beQuietDuring(IMain.scala:214) 
    at org.apache.spark.repl.SparkILoop.initializeSpark(SparkILoop.scala:37) 
    at org.apache.spark.repl.SparkILoop.loadFiles(SparkILoop.scala:98) 
    at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply$mcZ$sp(ILoop.scala:920) 
    at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply(ILoop.scala:909) 
    at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply(ILoop.scala:909) 
    at scala.reflect.internal.util.ScalaClassLoader$.savingContextLoader(ScalaClassLoader.scala:97) 
    at scala.tools.nsc.interpreter.ILoop.process(ILoop.scala:909) 
    at org.apache.spark.repl.Main$.doMain(Main.scala:70) 
    at org.apache.spark.repl.Main$.main(Main.scala:53) 
    at org.apache.spark.repl.Main.main(Main.scala) 
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.base/java.lang.reflect.Method.invoke(Method.java:564) 
    at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:755) 
    at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:180) 
    at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:205) 
    at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:119) 
    at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)` 
+1

Können Sie deinstallieren 'scala' Paket und von vorn beginnen? Es wird nicht für Spark benötigt, da es bereits mit den notwendigen Bibliotheken/Gläsern geliefert wird. Der Fehler sieht wie ein Versionskonflikt zwischen Scala-Versionen aus (und Spark hat es gerade enthüllt). –

Antwort

21

Spark ist nicht kompatibel mit Java 9, die brew cask install java die Version wird installiert werden, wenn es auf dem neuesten Stand ist. Wenn Sie installiert haben Java 9, was Sie tun müssen, ist Java installieren 8 statt:

brew cask uninstall java 
brew tap caskroom/versions 
brew cask search java 
brew cask install java8 
+1

Sir, Sie verdienen eine Medaille :) –

+0

was kann ich sonst noch versuchen, wenn das nicht funktioniert? :( – user3768495

0

win10: Sie müssen zu jdk8 konvertieren: einrichten JAVA_HOME = jdk8; Verwerfen aus dem Pfad das C: \ ProgramData \ Oracle \ Java \ javapath; (es zeigt immer die jdk9)

+0

Wie wird das helfen? – Sunil

0

Ich konfrontiert dasselbe Problem. Aber als ich meine Laptop-Java-Version überprüfte, war es 9. Ich wechselte gerade zu Java 8 und fand, dass alles gut funktioniert.

Überprüfen Sie diese Lösung. Hoffe, es wird funktionieren, wenn Sie genau den gleichen Fehler wie der Beginn dieses Threads bekommen.

  • Binod Suman
Verwandte Themen