Sparkランタイム中にエラーが発生しました原因:java.lang.ClassNotFoundException:org.apache.spark.rdd.RDD

1エラーメッセージ

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/spark/sql/SparkSession$
	at Demo1_QuickStart$.main(Demo1_QuickStart.scala:7)
	at Demo1_QuickStart.main(Demo1_QuickStart.scala)
Caused by: java.lang.ClassNotFoundException: org.apache.spark.sql.SparkSession$
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 2 more

Process finished with exit code 1

2理由分析

      <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-sql_2.10</artifactId>
            <version>${spark.version}</version>
            <!--  <scope>provided</scope> -->
      </dependency>

pomファイルに追加しました

<scope>provided</scope>

このラベルは、コンパイル環境は使用可能であることを示していますが、実行時には使用できません。主な理由は、パッケージが大きくなりすぎないようにサーバー上にあるため、パッケージ化時にこれらの依存関係が入力されないことです。

解決策:上の図に示すように、ローカルで実行している場合は、<scope>提供</ scope>からログアウトします。

 

 

 

おすすめ

転載: blog.csdn.net/godlovedaniel/article/details/114190802