【问题标题】:Exception in thread "main" java.lang.NoClassDefFoundError: akka/util/Helpers$ConfigOps$线程“主”java.lang.NoClassDefFoundError 中的异常:akka/util/Helpers$ConfigOps$
【发布时间】:2018-12-12 09:05:32
【问题描述】:

我正在关注下面链接中的一篇文章,以在 java 中创建一个简单的 spark 作业。

https://www.datasciencebytes.com/bytes/2016/04/18/getting-started-with-spark-running-a-simple-spark-job-in-java/

下面是我的 Java 文件:

import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;

import java.io.IOException;

public class SparkAppMain {
    public static void main(String[] args) throws IOException {
        SparkConf sparkConf = new SparkConf()
                .setAppName("Example Spark App")
                .setMaster("local[*]"); // Delete this line when submitting to a cluster
        JavaSparkContext sparkContext = new JavaSparkContext(sparkConf);
        JavaRDD<String> stringJavaRDD = sparkContext.textFile("/tmp/nationalparks.csv");
        System.out.println("Number of lines in file = " + stringJavaRDD.count());
    }
}

下面是我的 POM.xml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>edu.berkeley</groupId>
    <artifactId>simple-project</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.10</artifactId>
            <version>1.6.1</version>
        </dependency>

        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>2.10.3</version>
        </dependency>

        <dependency>
            <groupId>io.netty</groupId>
            <artifactId>netty-all</artifactId>
            <version>4.1.5.Final</version>
        </dependency>

        <dependency>
            <groupId>com.typesafe.akka</groupId>
            <artifactId>akka-actor_2.10</artifactId>
            <version>2.2.1</version>
        </dependency>

        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-streaming_2.10</artifactId>
            <version>1.6.1</version>
        </dependency>

    </dependencies>

</project>

我已经尝试过解决方案,例如 spark-streaming 版本应该与 spark-core (1.5.2) 相同。 spark-streaming-kafka_2.10 也一样。

【问题讨论】:

  • 您的麻烦似乎与Spark 无关,而仅与akka 模块有关。这里:mvnrepository.com/artifact/com.typesafe.akka 列出了许多附加的 aka 模块。也许他们中的一个通过错过的课程完成了巡回演出 akka-actor 之一?

标签: java apache-spark noclassdeffounderror


【解决方案1】:

添加以下 pom.xml 并解决问题

<?xml version="1.0" encoding="UTF-8"?>

http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0

<groupId>edu.berkeley</groupId>
<artifactId>simple-project</artifactId>
<version>1.0-SNAPSHOT</version>

<dependencies>
    <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-core_2.11</artifactId>
        <version>1.5.1</version>
    </dependency>

    <dependency>
        <groupId>com.codahale.metrics</groupId>
        <artifactId>metrics-core</artifactId>
        <version>3.0.2</version>
    </dependency>

    <dependency>
        <groupId>com.codahale.metrics</groupId>
        <artifactId>metrics-json</artifactId>
        <version>3.0.2</version>
    </dependency>

    <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-all</artifactId>
        <version>4.1.5.Final</version>
    </dependency>

</dependencies>

【讨论】:

    猜你喜欢
    • 2016-03-17
    • 2013-09-29
    • 2017-10-11
    • 1970-01-01
    • 2020-08-31
    • 2019-10-17
    • 1970-01-01
    • 2011-09-14
    • 2014-11-06
    相关资源
    最近更新 更多