spark idea java.lang.NoClassDefFoundError

博客指出在Idea运行Spark的mainclass时会出现类似报错,原因主要是Maven依赖的scope设置不对,解决办法是注释掉<scope>provided</scope>。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/fs/FSDataInputStream
	at org.apache.spark.SparkConf.loadFromSystemProperties(SparkConf.scala:73)
	at org.apache.spark.SparkConf.<init>(SparkConf.scala:68)
	at org.apache.spark.SparkConf.<init>(SparkConf.scala:55)

也可能是

Exception in thread "main" java.lang.NoClassDefFoundError: scala/Cloneable 
at java.lang.ClassLoader.defineClass1(Native Method) 
at java.lang.ClassLoader.defineClass(ClassLoader.java

都是类似的报错,这个主要是maven依赖的scope设置不对 ,注释掉<scope>provided</scope>

    <dependency>
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-core_${scala.binary.version}</artifactId>
      <version>${project.version}</version>
     <!-- <scope>provided</scope> -->
    </dependency>

一般是再idea 运行spark 的 mainclass 报错

Spark升级之后,遇到IDEA中无法找到org.apache.spark.Logging类的问题是常见的。这种情况通常是由于IDEA项目中的依赖没有同步更新造成的。要解决这个问题,你可以采取以下几个步骤: 参考资源链接:[spark-core_2.11-1.5.2.logging.jar解决spark升级没有log的jar包](https://wenku.csdn.net/doc/6412b6a1be7fbd1778d47692?spm=1055.2569.3001.10343) 1. 首先,确认你的项目中是否已经包含了最新版本的Spark核心库依赖。 2. 如果已经包含,那么问题可能出现在IDEA没有正确加载这些依赖。你可以尝试重新导入项目或者清理并重新构建项目。 3. 确保你的IDEA设置中,项目的SDK正确指向了你安装的Spark版本对应的Java SDK。 4. 如果以上步骤仍然无法解决问题,你可以尝试将《spark-core_2.11-1.5.2.logging.jar解决spark升级没有log的jar包》添加到项目的lib目录中,并在IDEA中将其导入为依赖。 5. 完成以上步骤后,重新启动IDEA并再次尝试运行你的Spark程序。 通过这些步骤,你应该能够解决IDEA中因为Spark升级而出现的类找不到的误。此外,建议在进行任何版本升级时,都仔细阅读官方的升级指南,了解可能会影响到的依赖和配置变更,以提前做出相应的调整。 参考资源链接:[spark-core_2.11-1.5.2.logging.jar解决spark升级没有log的jar包](https://wenku.csdn.net/doc/6412b6a1be7fbd1778d47692?spm=1055.2569.3001.10343)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值