在项目 jar 的 IntelliJ 中提交火花产生未找到类错误



我正在做一个实现流口水的基本程序,该程序在应用程序配置上运行,但是当我尝试运行JAR时,我遇到了错误。

我在终端上收到的错误:

`Suhita-MacBookPro:Drool-CreditScore-Sample sgoswami$ spark-submit --class main.scala.suhita.Sample --master local[*] target/DroolsMaven-1.0-SNAPSHOT.jar 
java.lang.ClassNotFoundException: main.scala.suhita.Sample
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.apache.spark.util.Utils$.classForName(Utils.scala:230)
at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:712)
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)`

Drools-Project
>src
>main
>scala
>suhita
- Sample
- Applicant
>META-INF
-kmodule.xml
-manifest.MF
>resources.rules
-rules 

当您的类未加载属性时,会发生这种情况。我最近见过几次。因此,有两种方法可以解决此问题:

  • 刷新可能包含sbt clean compile的课程

  • 或者,您可以尝试从顶部菜单重新加载创意类。说起来很模糊,但有时重新启动 intellij 也可以工作,因为它会再次重新加载所有类。

我相信一种方法会起作用。让我知道它是否仍然存在。

查看项目的树结构

Drools-Project
>src
>main
>scala
>suhita
- Sample
- Applicant

您无需提供main中的类名作为main.scala.suhita.Sample

只需将类名用作suhita.Simple

spark-submit --class suhita.Sample --master local[*] target/DroolsMaven-1.0-SNAPSHOT.jar

它应该工作

最新更新