【问题标题】:Eclipse doesn't detect Java main() function when adding Spark Functions添加 Spark 函数时 Eclipse 未检测到 Java main() 函数
【发布时间】:2019-06-14 16:12:25
【问题描述】:

我正在使用 java 测试 Spark,并在使用 Eclipse 运行我的程序时遇到了一些问题。

测试代码如下:

package projet1;


import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;

public class projet1 {

    public static void main(String[] args) {
    System.out.println("Hello world");
    System.setProperty("hadoop.home.dir", "/home/user1/Spark_Projects");
    Logger.getLogger("org.apache").setLevel(Level.WARN);

    SparkConf conf = new SparkConf().setAppName("SiravPg").setMaster("local[*]");
    JavaSparkContext sc = new JavaSparkContext(conf);
    JavaRDD<String> myRDD = sc.textFile("src/main/ressources/data.txt")
    sc.close();
    }

}

运行此代码时,eclipse 似乎没有检测到我的 main() 函数并显示一个新窗口,要求我选择一个 Java 应用程序

Java Application

PS : "System.out.println("Hello world");"运行正常。

【问题讨论】:

  • 首先,为什么你有一个“final”关键字?其次,如果 println 运行正确,这没有任何意义,这表明不仅找到了您的 main 方法,而且它运行了
  • Println 仅在我注释所有剩余代码并将其单独保留时运行,但包含其余代码时,没有任何运行。
  • @Kishore 我尝试了所有提到的解决方案,但没有成功
  • 如果您没有注释 spark 的东西,您是否确定 Eclipse 正确编译了您的类?也许尝试将主方法和初始化分开并从调试器开始......

标签: java eclipse apache-spark


【解决方案1】:

此问题的解决方案是从显示的列表中选择要运行的类,在我的情况下,我选择 project1 并单击 OK 按钮。

【讨论】:

    【解决方案2】:

    只需使用 public static void main(String[] args) 而不是 public static void final main(String[] args)。

    【讨论】:

      猜你喜欢
      • 2018-03-16
      • 2019-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-12
      • 2021-04-15
      • 1970-01-01
      • 2012-05-13
      相关资源
      最近更新 更多