IDEA调试spark程序报错

Exception in thread "main" java.lang.NoClassDefFoundError: javax/servlet/Servlet
	at org.apache.spark.ui.WebUI.attachPage(WebUI.scala:79)
	at org.apache.spark.ui.WebUI$$anonfun$attachTab$1.apply(WebUI.scala:63)
	at org.apache.spark.ui.WebUI$$anonfun$attachTab$1.apply(WebUI.scala:63)
	at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
	at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
	at org.apache.spark.ui.WebUI.attachTab(WebUI.scala:63)
	at org.apache.spark.ui.SparkUI.initialize(SparkUI.scala:67)
	at org.apache.spark.ui.SparkUI.<init>(SparkUI.scala:80)
	at org.apache.spark.ui.SparkUI$.create(SparkUI.scala:208)
	at org.apache.spark.ui.SparkUI$.createLiveUI(SparkUI.scala:150)
	at org.apache.spark.SparkContext.<init>(SparkContext.scala:481)
	at com.winner.ipva.bzv2.client.HnBZV2Client$.main(HnBZV2Client.scala:27)
	at com.winner.ipva.bzv2.client.HnBZV2Client.main(HnBZV2Client.scala)
Caused by: java.lang.ClassNotFoundException: javax.servlet.Servlet
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 13 more

原因

  • 缺少jar包
  • jar包冲突

解决

先查看pom文件中是否引入了对应的依赖,如果没有的话,需要引入:

<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>javax.servlet-api</artifactId>
  <version>3.1.0</version>
</dependency>

如果是从Maven Repository上面获取的依赖记得要删除<scop>这一行

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐