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>からログアウトします。