NoClassDefFoundError:无法初始化类org.apache.spark.package

时间:2019-07-19 10:37:30

标签: scala apache-spark intellij-idea apache-spark-mllib

我正在尝试对apache spark的MLLib进行一些更改。我从Github克隆了最新的spark仓库,并使用JDK 1.8.0scala-sdk-2.12.6在IntelliJ中将MLLib作为一个项目打开,并创建了一个临时文件以确保可以运行。

这是目前正在测试的所有代码:

import org.apache.spark.sql.SparkSession
val spark = SparkSession.builder.master("local").appName("IncrementalCB").getOrCreate()

它返回错误:

java.lang.NoClassDefFoundError: Could not initialize class org.apache.spark.package$
    at org.apache.spark.SparkContext.$anonfun$new$1(scratch_1.scala:179)
    at org.apache.spark.internal.Logging.logInfo(scratch_1.scala:53)
    at org.apache.spark.internal.Logging.logInfo$(scratch_1.scala:52)
    at org.apache.spark.SparkContext.logInfo(scratch_1.scala:73)
    at org.apache.spark.SparkContext.<init>(scratch_1.scala:179)
    at org.apache.spark.SparkContext$.getOrCreate(scratch_1.scala:2508)
    at org.apache.spark.sql.SparkSession$Builder.$anonfun$getOrCreate$5(scratch_1.scala:942)
    at scala.Option.getOrElse(scratch_1.scala:134)
    at org.apache.spark.sql.SparkSession$Builder.getOrCreate(scratch_1.scala:933)
    at #worksheet#.spark$lzycompute(scratch_1.scala:2)
    at #worksheet#.spark(scratch_1.scala:2)
    at #worksheet#.get$$instance$$spark(scratch_1.scala:2)
    at #worksheet#.#worksheet#(scratch_1.scala:10)

虽然我不确定情况如何,但我怀疑可能与JAR或版本有关。有人愿意填补空白吗?谢谢!

1 个答案:

答案 0 :(得分:0)

首先:您无需从GitHub复制Spark存储库即可使用spark。

第二个:与其使用暂存文件,不如使用mavensbt设置项目。

他们将为您节省下载所有依赖项的时间。