无法调用 main class

cannot call main class

我正在使用此命令 运行 我在 spark 上的工作。

spark-submit --class=ueba.Main    --jars $JARS1,$JARS2  target/UEBA-1.0-SNAPSHOT.jar "hdfs://some_location:9000/seco"

这是我当前项目结构的快照。

我注意到我的旧项目有这个结构,其中主要 class 位于文件夹 'scala' 下。我认为文件夹 'scala' 是在我创建旧项目时自动创建的。在我当前的项目中,我没有(蓝色)文件夹 'scala'。

问题:

  1. 如何称呼我的主要 class?
  2. 你能解释一下什么是 blue folder scala 吗?为什么我需要它?我只有一个蓝框java。

EDIT

这是我的新结构。我创建了 'blue' 文件夹 scala(事实证明蓝色文件夹表示项目根目录)。现在 'scala' 是项目 root.But 我不认为我的主要 class 的路径是正确的。我尝试 运行 这个命令,它说 'class not found exeption' (我 运行 mvn package behore hand to get a jar)

spark-submit --class ueba.Main    --jars $JARS1,$JARS2  target/UEBA-1.0-SNAPSHOT.jar "hdfs://some_path:9000/seco"

问题:正确的命令是什么w.r.t。主要位置 class?

在 Intellij IDEA 中创建 scala 源代码根目录:

  1. 添加 scala 文件夹。
  2. 右键单击该文件夹,然后 select "Mark Directory as" > "Sources Root"。
  3. 添加相同的包结构,"ueba" 在你的情况下,并将你的 .scala 文件放在那里。