java.lang.NoClassDefFoundError: org/apache/commons/pool2/PooledObjectFactory

用GenericObjectPool来连接postgres数据库,在pom.xml中也加入了依赖

  <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-pool2 -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-pool2</artifactId>
            <version>2.4.2</version>
        </dependency>

在本机运行成功,打jar包放到集群上运行就报错:

20/07/06 10:25:51 ERROR executor.Executor: Exception in task 0.0 in stage 2.0 (TID 4)
java.lang.NoClassDefFoundError: org/apache/commons/pool2/PooledObjectFactory
	at com.emg.covers.MatchPointDAO$.roadMatch(JdbcHelper.scala:23)

解决办法:

在submit提交程序的时候再次引入org.apache.commons.commons-pool2的jar包

--jars /data/modules/testcxb/test/commons-pool2-2.4.2.jar \

#!/bin/bash
echo ------------------------ $syst_print ------------------------------ >> /data/modules/testcxb/test/6month.log

nohup /home/modules/spark-2.1.1/bin/spark-submit \
--master yarn \
--deploy-mode cluster \
--class com.emg.covers.Roadid_Covers \
--name roadid_covers  \
--driver-memory 1G \
--executor-memory 2G \
--executor-cores 2 \
--num-executors 20 \
--jars /data/modules/testcxb/test/commons-pool2-2.4.2.jar \
/data/modules/testcxb/test/cover_6month.jar \
emg/ecar/202007/05/01  cxb_cover_6month

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值