spark中实现ansj遇到NoClassDefFoundError错误

目的:在spark是实现ansj中文分词功能。

错误:总是报错19/01/17 16:23:08 INFO scheduler.DAGScheduler: ResultStage 0 (foreach at demo.scala:17) failed in 9.567 s due to Job aborted due to stage failure: Task 0 in stage 0.0 failed 4 times, most recent failure: Lost task 0.3 in stage 0.0 (TID 6, 172.20.2.178, executor 1): java.lang.NoClassDefFoundError: org/ansj/splitWord/analysis/ToAnalysis

原因:在项目引入ansj_seg包时,直接是下载的jar包,然后通过导入到项目中,所以在本地编译可以,把项目提交到集群上运行时就上面的错误。

图是直接通过Libraries导入jar包。

spark中实现ansj遇到NoClassDefFoundError错误_第1张图片

修改方法:我是直接通过maven引入的ansj_seg包,然后在打包,运行到集群的,可以进行分词功能。

spark中实现ansj遇到NoClassDefFoundError错误_第2张图片

最后:这是我遇到的问题以及解决方法,不一定适用到你,因为这类问题确实有很多种情况导致。当时在网上百度也是有各种解决办法,但是都不适用于我的情况,希望这个可以解决你的问题。

 

你可能感兴趣的:(大数据)