齐柏林飞艇抛出NullPointerException错误

2020年1月19日 12点热度 0条评论

我是齐柏林飞艇的新手,正在尝试在系统上设置齐柏林飞艇。
到目前为止,我已完成以下步骤:

  • here
  • 下载齐柏林飞艇

  • 在我的系统环境变量中设置JAVA_HOME。
  • 转到齐柏林飞艇0.7.3-bin-all \ bin并运行zeppelin.cmd
  • 可以在http://localhost:8090上看到zeppelin-ui
  • 当我尝试运行zeppelin tutotial-> Basic Features(spark)中提到的
    load data into table程序时,抛出以下错误

    java.lang.NullPointerException
        at org.apache.zeppelin.spark.Utils.invokeMethod(Utils.java:38)
        at org.apache.zeppelin.spark.Utils.invokeMethod(Utils.java:33)
        at org.apache.zeppelin.spark.SparkInterpreter.createSparkContext_2(SparkInterpreter.java:398)
        at org.apache.zeppelin.spark.SparkInterpreter.createSparkContext(SparkInterpreter.java:387)
        at org.apache.zeppelin.spark.SparkInterpreter.getSparkContext(SparkInterpreter.java:146)
        at org.apache.zeppelin.spark.SparkInterpreter.open(SparkInterpreter.java:843)
        at org.apache.zeppelin.interpreter.LazyOpenInterpreter.open(LazyOpenInterpreter.java:70)
        at org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:491)
        at org.apache.zeppelin.scheduler.Job.run(Job.java:175)
        at org.apache.zeppelin.scheduler.FIFOScheduler$1.run(FIFOScheduler.java:139)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
    

    我在控制台(cmd)显示以下错误的同时,可以在zeppelin-ui内部的输出中看到上述错误日志:

    DEBUG [2018-01-11 10:55:30,059] ({Exec Stream Pumper} RemoteInterpreterManagedProcess.java[processLine]:206) - DEBUG [2018-01-11 10:55:30,059] ({pool-1-thread-3} Interpreter.java[getProperty]:165) - key: zeppelin.spark.concurrentSQL, value: false
     WARN [2018-01-11 10:55:30,061] ({pool-2-thread-2} NotebookServer.java[afterStatusChange]:2064) - Job 20150210-015259_1403135953 is finished, status: ERROR, exception: null, result: %text java.lang.NullPointerException
            at org.apache.zeppelin.spark.Utils.invokeMethod(Utils.java:38)
            at org.apache.zeppelin.spark.Utils.invokeMethod(Utils.java:33)
            at org.apache.zeppelin.spark.SparkInterpreter.createSparkContext_2(SparkInterpreter.java:398)
            at org.apache.zeppelin.spark.SparkInterpreter.createSparkContext(SparkInterpreter.java:387)
            at org.apache.zeppelin.spark.SparkInterpreter.getSparkContext(SparkInterpreter.java:146)
            at org.apache.zeppelin.spark.SparkInterpreter.open(SparkInterpreter.java:843)
            at org.apache.zeppelin.interpreter.LazyOpenInterpreter.open(LazyOpenInterpreter.java:70)
            at org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:491)
            at org.apache.zeppelin.scheduler.Job.run(Job.java:175)
            at org.apache.zeppelin.scheduler.FIFOScheduler$1.run(FIFOScheduler.java:139)
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
            at java.util.concurrent.FutureTask.run(FutureTask.java:266)
            at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
            at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
            at java.lang.Thread.run(Thread.java:745)
    

    有什么我想念的东西或与 Spark 有关吗?因为我假设齐柏林飞艇会处理 Spark ,所以我们不必设置 Spark 。在此先感谢您的帮助!

    解决方案如下:

    首先,我将确保 Spark 正常运行。

    您是否尝试过运行新的“ Spark 笔记本”。

  • 创建新笔记本
  • 选择spark作为默认解释器
  • 只需在其中运行带有“sc”的段落
  • 它尝试初始化sparkcontext。

    当它起作用时,我们会感觉很好,我们需要检查所用段落中使用的语法选项。

    如果没有运行,我将使用以下变量检查/设置zeppelin-env.cmd:

  • SPARK_HOME
  • JAVA_HOME
  • HADOOP_CONF_DIR(如果使用hadoop)
  • 如果您没有在Windows上安装Spark,那么它将无法正常工作。

  • 下载您想要使用的Spark版本https://spark.apache.org/downloads.html
  • 将其解压缩到您选择的文件夹中(例如Windows c:/ hadoop / sparkVERSION)
  • 如果所有这些步骤都不起作用,请向我显示您尝试运行的输出和代码。

    BR

    更新

    下面的帖子恰好描述了如何在Windows上设置齐柏林飞艇来运行教程。

    https://hernandezpaul.wordpress.com/2016/11/14/apache-zeppelin-installation-on-windows-10/

    我只是在Windows机器上浏览了它,对我来说效果很好。